Название: передача сообщений/данных между потоками Отправлено: Anton от Январь 06, 2006, 15:46 как передавать сообщения/данные между потоками?
Название: передача сообщений/данных между потоками Отправлено: yshurik от Январь 06, 2006, 16:09 Mожно через те же самые Signal-Slots только нужны Queued Connections.
Название: передача сообщений/данных между потоками Отправлено: Dendy от Январь 06, 2006, 17:11 Сигнал-Слот передаёт собьІтия между потоками асинхронно. Естесственно в принимающем потоке должен бьІть организован цикл передачи собщений.
И ещё. Так как данньІе между потоками передаются асинхронно - они должньІ бьІть сохраненьІ где-то в промежуточной переменной. Для ентого тип нужно зарегистрировать в Qt: Код: class MyClass Подробнее здесь: QMetaType Название: передача сообщений/данных между потоками Отправлено: Anton от Январь 07, 2006, 13:26 а как быть с данными? Передавать в поток указатель на область памяти, изменять ее блокируя мьютексами?
добавлено спустя 4 минуты: И ещё. Так как данньІе между потоками передаются асинхронно - они должньІ бьІть сохраненьІ где-то в промежуточной переменной. Для ентого тип нужно зарегистрировать в Qt: Код: class MyClass Подробнее здесь: QMetaType Что-ьто я этого не нашел...qt334 Название: передача сообщений/данных между потоками Отправлено: KADABRA от Январь 07, 2006, 13:51 Anton
Цитировать Что-ьто я этого не нашел...qt334 В 4.1.0 точно есть :) Название: передача сообщений/данных между потоками Отправлено: Dendy от Январь 07, 2006, 15:45 В Qt3 нет механизма асинхронного коннекта и передачи данньІх между потоками. Ентот велосипед нужно изобретать заново, обвязавшись терпением и мутексами.
Название: Re: передача сообщений/данных между потоками Отправлено: Hellenna от Январь 11, 2006, 11:48 Цитата: "Anton" как передавать сообщения/данные между потоками? можно не зацикливаться на qt и использовать системное API ;) Linux/Unix/Mac: Код:
Название: Re: передача сообщений/данных между потоками Отправлено: AlexKiriukha от Январь 11, 2006, 15:44 Цитата: "Hellenna" Цитата: "Anton" как передавать сообщения/данные между потоками? можно не зацикливаться на qt и использовать системное API ;) Linux/Unix/Mac: Код:
Можно, но скорее всего это неприемлемо, так как не кроссплатформенно. Название: Re: передача сообщений/данных между потоками Отправлено: Hellenna от Январь 11, 2006, 16:45 Цитата: "AlexKiriukha" Можно, но скорее всего это неприемлемо, так как не кроссплатформенно. Код:
очень кросплатформенно ;) только надо знать как работают потоки в всех системах Название: передача сообщений/данных между потоками Отправлено: Dendy от Январь 12, 2006, 13:16 Та не ребята. Qt прогрессировала немеряно по сравнению с третьей версией. Сия проблема решена специально для вас умами троллей. СамьІй правильньІй способ - перейти на 4-ку.
Кстати, а какие проблемьІ с етим? |