gpt4 book ai didi

linux - 我应该在哪个线程处理 RxTx SerialEvent.DATA_AVAILABLE 事件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:13:07 26 4
gpt4 key购买 nike

我在 Linux 发行版上通过 usbserial 使用 RxTx 库。 RxTx 库的行为似乎与它在串行上的工作方式完全不同(以一种糟糕的方式)。

我的应用程序有多个线程,我最大的问题之一是我的流中似乎突然多了一到两个字节。我无法弄清楚它们来自哪里或为什么。当我使用另一个线程写入 RxTx 流时,这个问题似乎更频繁地发生。

所以我想知道是应该在当前 RxTx 线程上处理读取还是应该在收到 DATA_AVAILABLE 事件时在另一个线程上处理读取。

我希望有人可能有好的或坏的理由以这种或另一种方式做这件事。

最佳答案

这只是一个猜测,但它可能会给你一个线索。

是否有可能发送和接收共享一个缓冲区,或者当您发送时,字节也会以某种方式在输入端接收 - 我之前在某些嵌入式系统上看到过这种情况。

您可能会发现最好的做法是最初将发送和接收都保持在同一个线程上。另一件事可能是在尝试读取之前确保输出耗尽。

希望这能给你一些线索。

关于linux - 我应该在哪个线程处理 RxTx SerialEvent.DATA_AVAILABLE 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/84755/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com