0

我目前正在开发一个 USB 设备(基于微控制器的数据记录器),并希望将数据从设备收集到主机以进行可视化。libusbjava 用于 USB 数据传输。目前,我可以连接到设备并发送/接收数据。

我的问题是当我尝试以连续方式从设备连续接收数据(5.12Mb/s)时。这是发生的事情:

· 如果我尝试在 while 循环中连续收集数据,则可以实现所需的 USB 吞吐量,但绘图线程不再工作 · 如果我尝试使用计时器线程(每 1ms 640 字节)每 1ms 收集一次数据,吞吐量会受到显着影响,但绘图线程功能正常

构造我的 java 代码以实现所需的吞吐量和图形的最佳方法是什么?

4

1 回答 1

1

使用 . 在后台处理 USB 通信SwingWorker。试图每毫秒更新一次 GUI 是不现实的。相反,publish()批量更新并process()在事件调度线程上进行。

于 2014-01-31T12:55:05.530 回答