Вниз
Скачать: CL | DM;

Чтение com - порта и синхронизация потоков   Найти похожие ветки 

 
CHES ©   (2005-01-19 09:07) [0]

Предположим к com- порту подключено какое-нибудь устройство, с которого идет постоянный поток данных, которые нужно как-то обрабатывать, например, график строить. ИМХО логично организовать чтение данных из com-порта в отдельном потоке и писать данные в  буфер или массив.
Вопрос: какие могут варианты синхронизации потоков в подобной ситуации, чтобы не было конфликтов при доступе к этому буферу? Пока ничего лучше Synchronize() в голову не приходит. А если перед построением графика нужно произвести громоздкие вычисления? Не потяряю ли я данные с com-порта пока чего-то там считаю и рисую?


 
Digitman ©   (2005-01-19 09:39) [1]


> какие могут варианты синхронизации потоков в подобной ситуации,
> чтобы не было конфликтов при доступе к этому буферу?


Synchronize() - не самый худший способ, но кроме него синхронизацию можно осуществлять с помощью семафоров и мьютексов


> Не потяряю ли я данные с com-порта пока чего-то там считаю
> и рисую?


нет, не потеряешь.. если только сам к этому руку не приложишь



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
4-1106081297
Oddin
2005-01-18 23:48
2005.03.06
CD-ROM


14-1108492975
Michael5
2005-02-15 21:42
2005.03.06
Как заменить родное событие компонента своим?


1-1108640063
_iceman_
2005-02-17 14:34
2005.03.06
Delphi 2005


14-1108311197
AG.Smit
2005-02-13 19:13
2005.03.06
Как поиграть в CS:Source по модемам, типа Hyper Terminal?


3-1107349942
Топпер
2005-02-02 16:12
2005.03.06
FastReport нумерация строк данных




   Наверх