read函數讀取時報錯:Resource temporarily unavailable


串口接收數據,會收到包的前邊部分,然后報錯:Resource temporarily unavailable,但是,接着仍然會收到報的哦后邊部分,中間丟失了一部分。

原因:可能是非阻塞模式下使用了阻塞操作;
調用open函數時,使用了非阻塞模式(O_NONBLOCK),卻直接用read函數讀取;
而read默認為阻塞操作,所以導致報錯。

解決:去掉串口設備open函數中的O_NONBLOCK后正常。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM