Может ли дочерний поток родительского диалогового потока GUI создать дочернее окно?
Можно ли создать дочернее окно из вторичного дочернего потока или оно должно быть создано из потока графического интерфейса? Предполагая, что время жизни дочерней нити до конца программы.
1 ответ
Решение
В отличие от других операционных систем, каждый поток в окнах может содержать свой собственный насос сообщений и, следовательно, окна.
Необходимо соблюдать осторожность, так как дочерние окна должны взаимодействовать синхронно с их родителем - поэтому вы должны позаботиться о том, чтобы ни один поток не содержал критическую секцию или синхронный объект при вызове оконного API, который мог привести к отправке SendMessage - это БУДЕТ заблокировать потоки.