歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux下串口參數VTIME和VMIN

Linux下串口參數VTIME和VMIN

日期:2017/2/28 16:12:30   编辑:Linux教程

VTIME指定了等待的時間,VMIN指定了讀取字符的最小數量。

它們不同組合地取值會得到不同的結果,分別如下:

1.當VTIME>0,VMIN>0時。read調用將保持阻塞直到讀取到第一個字符,讀到了第一個字符之後開始計時,此後若時間到了VTIME或者時間未到但已讀夠了VMIN個字符則會返回;若在時間未到之前又讀到了一個字符(但此時讀到的總數仍不夠VMIN)則計時重新開始。

2. 當VTIME>0,VMIN=0時。read調用讀到數據則立即返回,否則將為每個字符最多等待VTIME時間。

3. 當VTIME=0,VMIN>0時。read調用一直阻塞,直到讀到VMIN個字符後立即返回。

4. 若在open或fcntl設置了O_NDELALY或O_NONBLOCK標志,read調用不會阻塞而是立即返回,那麼VTIME和VMIN就沒有意義,效果等同於與把VTIME和VMIN都設為了0。

Copyright © Linux教程網 All Rights Reserved