pyserial - возможна запись в последовательный порт из потока a, заблокировать чтение из потока b?

Я пробовал погуглить, не нашел ответа, искал здесь, не смог найти отвечать. Кто-нибудь изучал, является ли потокобезопасным записывать в объект Serial () (pyserial) из потока a и блокировать ли чтение из потока b?

Я знаю, как использовать примитивы синхронизации потоков и поточно-безопасные структуры данных, а также в Фактически, моя текущая форма этой программы имеет поток, предназначенный для чтения / записи через последовательный порт, и я использую потокобезопасные структуры данных для координации действий в приложении.

Мое приложение значительно выиграло бы, если бы я мог писать в последовательный порт из основного потока (и никогда не читать из него) и читать из последовательного порта, используя блокирующие чтения во втором потоке (и никогда не писать в него). Если кто-то действительно хочет, чтобы я объяснил, почему это принесет пользу приложению, я могу добавить свои причины. На мой взгляд, будет только один экземпляр Serial (), и даже если поток B находится в блокирующем чтении объекта Serial, поток A может безопасно использовать методы записи для объекта Serial.

Кто-нибудь знает, можно ли таким образом использовать класс Serial?

РЕДАКТИРОВАТЬ: Мне приходит в голову, что ответ может зависеть от платформы. Если у вас есть опыт работы с такой платформой, было бы хорошо знать, на какой платформе вы работаете.

РЕДАКТИРОВАТЬ: Был только один ответ, но если кто-то еще пробовал это, оставьте отзыв со своим опытом.

9
задан Artem Zankovich 5 December 2012 в 14:44
поделиться