В каком контексте будет вызван слот, Работа с потоками |
Здравствуйте, гость ( Вход | Регистрация )
В каком контексте будет вызван слот, Работа с потоками |
flankerr |
11.6.2009, 11:49
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: 0 |
В главном потоке создаётся пользовательский поток. Из главного потока отсылается сигнал связанный со слотом класса потока пользователя. В контексте какого потока будет вызван слот ?
|
|
|
flankerr |
11.6.2009, 12:48
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: 0 |
вот и я так думал а сейчас проверил и сильно обламался
если вызвать QThread::currentThreadId() в главном потке и в слоте класса дочернего потка то они совпадут а вот QThread::currentThreadId() вызванный в run будет другим. connect вызывался и до вызова start и после, и до выхова exec дочернего потка и после (в главном потоке) в coonnect передавался тип Qt::QueuedConnection и оставлял по умолчанию - рзультат один - слот вызывается в контексте потока сигнала точнее сказать слот будет вызван в контексте потока в котором был создан объект содержащий слот. Сообщение отредактировал flankerr - 11.6.2009, 12:53 |
|
|
Текстовая версия | Сейчас: 29.11.2024, 13:16 |