gpt4 book ai didi

java - SerialPortEventListener 实现

转载 作者:行者123 更新时间:2023-12-01 16:08:42 27 4
gpt4 key购买 nike

我正在使用 Firmata 协议(protocol),它允许您通过串行协议(protocol)控制 Arduino。我正在使用 SerialPortEventListener 监听 DATA_AVAILABLE 事件来读取传感器值。但我注意到有很多延迟,我的应用程序注册更新的传感器值需要一秒钟,协议(protocol)以 57600 的波特率运行。我的问题是事件监听器是否在单独的线程上运行,或者我的应用程序和监听器在同一线程中运行,并且我的应用程序减慢了速度。

编辑:为了让我自己清楚,我只是在理论上问在单独的线程中读取串行传输或使用事件监听器会更快吗?

最佳答案

对所有这些答案感到抱歉,我正在认真考虑您的问题。

除了从错误的线程更新 GUI 的问题之外,线程的问题可能是无关紧要的。由于从串行端口获取更新可能不会消耗大量 CPU 功率(无论如何,它不应该消耗大量 CPU 功率,除非它是通过紧密的轮询循环完成的),因此线程之间不会出现任何明显的 CPU 资源争用,并且因此线程不应该“互相减慢速度”。我几乎不认为这种可能性。但是您可以查看任务管理器 (Windows) 或系统监视器 (Linux),看看您的 CPU 是否非常繁忙;这可能会改变事情。

关于java - SerialPortEventListener 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2013113/

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