我正在寫一個應用程序,它從條形碼掃描器讀取輸入,我希望它的工作方式是:它可以用作鍵盤記錄器,當輸入速度足夠快時,從條形碼掃描儀獲得輸入。檢測條碼掃描器何時結束輸入
現在我的問題是我不知道什麼時候從條形碼掃描儀獲得最後一個字符,所以我知道我有一個最終有效的條形碼。
我的方法只有在接收到一個字符時才被調用,所以這是當我必須檢查我的角色是否是最後一個接收到的時候。
我想做到這一點的方式是,我在我的方法是休眠MAXIMUM_TIME_BETWEEN_CHARACTERS_FROM_BARCODE_SCANNER + 1個milliseoconds,它醒來後,如果我收到任何新的角色,如果我這樣做,是它驗證最終創建一個新的線程線程死亡,如果沒有收到新的字符,這意味着收到完整的條碼,我可以使用它。
但是通過這樣做,我開始獲得各種奇怪的錯誤,比如執行死於過早。
任何人都可以提出一個不同的解決方案嗎?
我在C#中編寫它,如果它是相關的。
這就是我的所作所爲 – Jake 2012-06-21 09:21:21
是的,它不會添加換行符。 – b2238488 2014-06-27 13:16:21