2016-05-04 529 views
0

我正在使用USB4Java輪詢某個線程上的某個USB設備,並在可用時立即讀取數據。我面臨的問題是沒有available()類似於流的方法,它檢查端口上用於讀取的可用字節數(一個用於串行端口的NRSerial)。是否有這樣的USB的等效方式?如果不是,我可以簡單地調用read函數並等待超時?後者對我來說似乎太蠻橫。使用USB4Java輪詢USB數據使用USB4Java

回答

0

除了輪詢以外,根本沒有別的選擇(至少在USB 2.0中)。這就是USB讀取的工作原理:主機向設備請求數據。設備必須將數據保存到緩衝區中的主機並等待主機請求。只有USB 3允許設備告訴主機何時在緩衝區中有新數據(這在技術上也是主機輪詢標誌比啓動讀取傳輸更輕)。