Здравствуйте, гость ( Вход | Регистрация )
|
flankerr |
11.6.2009, 11:49
Сообщение
#1
|
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: 0
|
В главном потоке создаётся пользовательский поток. Из главного потока отсылается сигнал связанный со слотом класса потока пользователя. В контексте какого потока будет вызван слот ?
|
|
|
|
![]() |
|
SABROG |
11.6.2009, 16:19
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34
|
А объясните мне такую вещь. Если запустить timerEvent для объекта в главном потоке и в нем эмитить сигнал для дочернего потока, то слот этого потока выполняется в главном потоке (видимо причина в том, что сам объект QThread находится в главном потоке). Однако, если эмитить сигнал из run() для главного потока, то слот вызывается в главном потоке (что есть правильно).
Вопрос в том как отправить сигнал дочернему потоку из объекта главного потока, чтобы слот выполнялся в дочернем потоке? При этом moveToThread или создание того же QMainWindow внутри run() совершенно не выход. В первом случае вернутся из moveToThread не получится, а второй случай вообще бредовый. Сообщение отредактировал SABROG - 11.6.2009, 16:22 |
|
|
|
flankerr В каком контексте будет вызван слот 11.6.2009, 11:49
SABROG Я думаю, что в контексте пользовательского потока,... 11.6.2009, 12:41
flankerr вот и я так думал а сейчас проверил и сильно облам... 11.6.2009, 12:48
SABROG Кажись вспоминаю, либо connect должен делаться в r... 11.6.2009, 12:56
flankerr опытным путём пришёл к тому что объект должен созд... 11.6.2009, 13:02
igor_bogomolov Цитата(flankerr)опытным путём пришёл к тому что об... 11.6.2009, 13:38
Litkevich Yuriy Цитата(SABROG @ 11.6.2009, 20:19) слот эт... 11.6.2009, 16:31
SABROG Цитата(Litkevich Yuriy @ 11.6.2009, 17:31... 11.6.2009, 16:35
Litkevich Yuriy Надо поискать по форуму. Эдик (ViGOur) с кем-то об... 11.6.2009, 16:52
SABROG Цитата(Litkevich Yuriy @ 11.6.2009, 17:52... 11.6.2009, 17:08
BRE Цитата(SABROG @ 11.6.2009, 18:08) Однако ... 11.6.2009, 17:33
Litkevich Yuriy Я с потоками работал толькот одним способом:
Перео... 11.6.2009, 17:11
SABROG Попытался воссоздать ситуацию:
#include <QtCo... 11.6.2009, 17:19
Litkevich Yuriy Цитата(SABROG @ 11.6.2009, 21:19) Т.е. ка... 11.6.2009, 17:27
SABROG Цитата(Litkevich Yuriy @ 11.6.2009, 18:27... 11.6.2009, 17:36
BRE Цитата(SABROG @ 11.6.2009, 18:36) Я решил... 11.6.2009, 17:41
Litkevich Yuriy Цитата(SABROG @ 11.6.2009, 21:36) Я назва... 11.6.2009, 17:46
SABROG Цитата(BRE @ 11.6.2009, 18:41) Этот метод... 11.6.2009, 17:56
igor_bogomolov Цитата(Litkevich Yuriy @ 11.6.2009, 18:46... 11.6.2009, 20:06
BRE Я к самому классу QThread и его наследникам отношу... 11.6.2009, 20:44
SABROG Цитата(BRE @ 11.6.2009, 21:44) С точки зр... 11.6.2009, 20:46
BRE Цитата(SABROG @ 11.6.2009, 21:46) Цитата(... 11.6.2009, 20:50
Litkevich Yuriy Цитата(SABROG @ 11.6.2009, 21:56) Может п... 11.6.2009, 20:48
SABROG Цитата(Litkevich Yuriy @ 11.6.2009, 21:48... 11.6.2009, 20:51
Litkevich Yuriy Собственно почему странно, если так можно самого ... 11.6.2009, 20:56![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 28.12.2025, 9:21 |