О потоках и пересылке данных
Вновь обращаюсь к Вам с вопросом.
Делаю такую прогу: моделирую работу генератора сигналов (синусоиды, треугольные волны, видеоимпульсы и еще всяко разно), дискретного канала, осциллографа и анализатора(понятие некорректное, но лучше всего отражает суть этой штуковины, т.к. делать она умеет очень многое: от выяснения амплитуды до спектрального анализа). Так вот, надо чтобы в real-time генерируемая волна отражалась на экране virtual-осциллографа, при этом еще желательно, чтобы данные с генератора сигналов попадали в анализатор и дискретный канал, дабы с ними что-то происходило и можно было бы все это наблюдать.
В связи с этим у меня возникает законный вопрос: как лучше организовать это дело?
Как мне кажется, для каждого из virtual-приборов нужно выделить отдельный поток в процессе, но как организовать рассылку данных от самого генератора к другим устройствам? Мне почему-то кажется, не помню где вычитал, что можно это сделать двумя способами: через рассылку сообщений (ну типа обычные сообщения вроде ...Message (точно не помню - ниразу не сталкивался), и через какие-то потоковые объекты TStream, а может TFileStream, что дескать мол накопить немного данных, записать их в поток и отправить в свободное плавание, а другие должны будут этот поток выловить и уже с ним работать.
Очень прошу, подскажите, модет у кого какие идеи есть по этому поводу.
Цитата:
Originally posted by Britney
Доброго времени суток, господа программеры!
Вновь обращаюсь к Вам с вопросом.
Делаю такую прогу: моделирую работу генератора ... В связи с этим у меня возникает законный вопрос: как лучше организовать это дело?
Как мне кажется, для каждого из virtual-приборов нужно выделить отдельный поток в процессе ...
Доброго времени суток, господа программеры!
Вновь обращаюсь к Вам с вопросом.
Делаю такую прогу: моделирую работу генератора ... В связи с этим у меня возникает законный вопрос: как лучше организовать это дело?
Как мне кажется, для каждого из virtual-приборов нужно выделить отдельный поток в процессе ...
не надо никаких потоков! только намучаешься с синхронизацией... Лучше просто заведи список листенеров которые будут ловить каждый новый сгенерированный байт (или что там еще)
Хм, а можно и с потоками. У меня где-то был шаблонцик потока (нити), который может получать сообщения.
Цитата:
Originally posted by hardcase
Хм, а можно и с потоками. У меня где-то был шаблонцик потока (нити), который может получать сообщения.
Хм, а можно и с потоками. У меня где-то был шаблонцик потока (нити), который может получать сообщения.
конечно можно, но это не та задача где нужно