Windows поддерживает множество операций, которые, особенно используемые в комбинации, по своей природе не являются поточно-ориентированными.Что должно произойти, например, если один поток пытается вставить какой-либо текст в текстовое поле, начиная с 50-го символа, а другой поток пытается удалить первые 40 символов из этого поля?Windows могла бы использовать блокировки, чтобы гарантировать, что вторая операция не может быть начата до тех пор, пока не завершится первая, но использование блокировок добавит накладные расходы для каждой операции, а также повысит вероятность взаимоблокировки, если действия над одним объектом требуютманипулирование другим.Требование о том, что действия с конкретным окном должны выполняться в конкретном потоке, является более строгим требованием, чем необходимо для предотвращения одновременного выполнения небезопасных комбинаций операций, но его относительно легко анализировать.Использование элементов управления из нескольких потоков и предотвращение конфликтов с помощью каких-либо других средств, как правило, будет более сложным.