Название: не приходит сигнал Отправлено: once_again_abc от Ноябрь 08, 2011, 09:20 сигнал-слот регистрируется успешно (привязка по умолчанию), emit сигнала проходит успешно - пробежался по стеку вызовов, никаких ошибок - сигнал ставится в очередь получателям, но до слотов получателей почему-то не доходит. в чем может быть проблема?
Название: Re: не приходит сигнал Отправлено: Странник от Ноябрь 08, 2011, 09:27 сигнал-слот регистрируется успешно (привязка по умолчанию), emit сигнала проходит успешно - пробежался по стеку вызовов, никаких ошибок - сигнал ставится в очередь получателям, но до слотов получателей почему-то не доходит. в чем может быть проблема? соединение прямое или через очередь? если через очередь - цикл обработки событий запущен?Название: Re: не приходит сигнал Отправлено: once_again_abc от Ноябрь 08, 2011, 09:39 кажется я знаю в чем причина.
сигнал1 соединен со слотом1 через Qt::QueuedConnection, в слоте1 я жду на WaitCond очень долго. из-за этого любые другие сигналы не доходят до получателей, а интерфейс умирает. как это победить? заводить отдельный поток для обработки условия? других вариантов пока не вижу. Название: Re: не приходит сигнал Отправлено: twp от Ноябрь 08, 2011, 13:24 а есть возможность задать время ожиания? тогда можно сделать что-то типа такого:
Код: while(!WaitCond(time)) |