我想讀取一個串行端口的傳入數據並處理它們(Windows:native C++)。但我有兩個問題:串行端口:ReadFile和CloseHandle
1 - 我應該在ReadFile把儘可能nNumberOfBytesToRead:
ReadFile(hCom, buffer, nNumberOfBytesToRead, &read, NULL);
如果我把50首40個字節到達,ReadFile函數將不會返回。因爲它需要10個字節。如果我放1,我的應用程序將不會被優化。什麼是最好的數字?我該怎麼辦?
2-當我想退出我的應用程序時,如果沒有數據通過串口傳入,ReadFile將被鎖定而不返回。所以我無法使用CloseHandle正確關閉它。如何通過串口等待數據時強制ReadFile返回?
http://stackoverflow.com/questions/6036716/serial-comm-using-writefile-readfile –