Russian Qt Forum

Qt => Многопоточное программирование, процессы => Тема начата: SASA от Август 30, 2011, 16:43



Название: Поток замирает на первом инвоке
Отправлено: SASA от Август 30, 2011, 16:43
Проявляется под linux. В винде всё ок.
есть поток
Код:
void run
{
   while(1)
   {
     ...
     QMetaObject::invokeMethod(this, "fun", Qt::BlockingQueuedConnection);
     ...
   }
}

Поток крутится. В fun что-то отрисовывается, поэтому инвок. Если поток запускается вначале программы (на первых секундах) то первый инвок выполняется ~2 сек. Как с этим бороться и откуда могут растут ноги?
Как можно посмотреть, чем занимаются потоки программы в конкретны момент времени не в дебагере? Чтоб можно было вставить в код что типа "напечатай в консоли все потоки и чем они занимаются".