Передача данных между потоками на C++

nejtr0n

Гуру форума
Регистрация
24 Янв 2014
Сообщения
129
Реакции
82
Здравствуйте.
Возникла задача получать данные из потока по требованию. Но что то никак не разберусь, как это сделать. Помогите пожалуйста. Суть проблемы.

Есть стандартный linux fifo, в который сыпятся сырые данные.
Есть поток - обработчик этих данных.
Он бесконечно читает данные, буферизует их, cтроит из них нужную структуру, и сохраняет её в переменную. (Пусть будет frame)

Есть основной поток. В идеале он ничего не должен знать про обработчик данных.
В любой момент времени он должен уметь считать текущий frame из дочернего потока.

Но почему то у меня frame всегда пустой.
 
Вообще, конечно, неплохо было бы код посмотреть.
А так, как вариант, может быть переменная объявляется после разделения потоков и, соответственно, является разной для каждого из них?

Используете ли для синхронизации чтения/записи мьютексы (ну или семафоры)?
 
Назад
Сверху