12 / 12 / 4
Регистрация: 07.09.2012
Сообщений: 542
|
|||||||||||
1 | |||||||||||
Синхронизация данных при чтении COM порта03.08.2015, 00:50. Показов 639. Ответов 0
Метки нет Все метки)
(
Вынес отсюда
Как правильно организовать синхронизацию доступа к данным У меня есть поток в котором я читаю данные из COM порта
Однако в парсере я должен записать эти данные в какую-то переменную, которую смогу прочитать другим потоком Для этого я использую критические секции (Начался набор сообщения, сделал лок, закончился набор сообщения, анлок) А далее в другом потоке мне их надо как-то прочитать соответственно в нем я также вызываю
Вместо $GPGST,085231.00,0.0000,,,,457720,457720,457720*69 получаю $GPGST,085233.00,0.0000000000000000000000000000000 000000000000,,,,457726,457777777777777777777777777 77777777777777777777777777777777777777726,457726*6 D То почему-то читаю некоторые символы по много раз Хотя данная ошибка не стабильная и может появиться на неопределенное по счету сообщение. Предполагаю, что в момент, когда я из второго потока делаю Lock() (для чтения данных) и первый поток вынужден ждать, что-то происходит, что в результате я получаю неверное сообщение из порта. Помогите как правильно синхронизировать чтение из порта?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
03.08.2015, 00:50 | |
Ответы с готовыми решениями:
0
Вылет в синий экран при чтении данных из ком-порта Чтение из COM порта, При чтении из порта зависает read() «Зависает» при чтении com порта Подвисает при чтении COM порта |
03.08.2015, 00:50 | |
Помогаю со студенческими работами здесь
1
Зависает при чтении com порта Зависает форма при чтении из порта При чтении com порта зависает приложение
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |