Форум программистов CodeGuru
18 Январь 2018, 16:08:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости:
 
   Начало   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Работа с потоками  (Прочитано 14137 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Felessan
Новичок
*
Офлайн Офлайн

Сообщений: 1


Просмотр профиля
« : 25 Сентябрь 2010, 22:01:26 »

Изучаю работу с потоками. Пытаюсь в качестве упражнения реализовать следующее:
Основной поток создает несколько дочерних, которые должны обрабатывать некую информацию и слать основному потоку данные с некоторой периодичностью. А тот эти данные обрабатывает. Вот как организовать такой обмен данными?
Записан
3V
Администратор
Ветеран
*****
Офлайн Офлайн

Сообщений: 1347



Просмотр профиля WWW
« Ответ #1 : 28 Сентябрь 2010, 16:08:39 »

Можно использовать PostThreadMessage. Если это MFC, то у CWinThread есть метод PostThreadMessage. В карте сообщений класса потока (наследника CWinThread можно прописать обработчик при помощи макроса ON_THREAD_MESSAGE).

PostThreadMessage ставит сообщение в очередь сообщений потока. Т.е. обработка асинхронная. Если надо передавать какие-то данные, кроме lParam, wParam, то придется класть их в какую-либо структуру. Обрабатывающий поток должен будет освобождать память.
Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!