關於fread是否會阻塞的問題

2021-10-10 13:20:06 字數 536 閱讀 4650

1 fread這個函式是阻塞的嗎?

2 當我讀取某乙個檔案是否需要等到fread返回才能繼續下面的操作?

3 還有,如果我讀取的檔案內部有錯誤(例如,那一塊磁碟有問題,或是其他的一些問題),此時fread還能繼續正常讀取嗎?如果讀不到,fread是否會阻塞住,還是能馬上返回異常?

1.fread不是阻塞函式,要不就是讀到了,要不就是讀不到或者異常返回。

2.fread函式開啟檔案後如果是讀寫方式,則該該檔案直到操作完成後,其他程序才能對其操作。

3.fread有異常直接會返回錯誤。不會阻塞等待。

如果用fread讀檔案,不會阻塞

如果用來讀管道、socket連線等,則可能會阻塞

你可以設定fd的屬性為阻塞或非阻塞

應該阻塞;

從檔案讀一定大小的資料,沒內容可讀則返回已讀資料大小;

返回0通常是讀到了檔案尾。如果你確認沒有到

檔案尾,可以用ferror檢查錯誤。

if ( ferror ( fp ) )

關於SESSION 阻塞問題

關於session 阻塞問題 當開啟 session 後,一般都是等待指令碼執行完成後自動關閉 如果需要處理某些資料時,執行的時間比較長 如5 6秒時 而處理的進度寫入session 中,這時頁面執行乙個ajax去獲取當前執行的進度時,就會出現 session 阻塞的問題。解決方式 在需要讀寫 se...

fread和flushall的問題

今天測試寫過的一段程式,比較頻繁的出現乙個fread錯誤 貼 int sendchannelinfo socket obj sock else if postsend sock,sendbuf no error return 0 錯誤描述 讀檔案的時候,fopen正常,得到正確的檔案指標,之後的若干...

關於條件控制的方法是否會流行

不知道各位做過c s的mis管理系統的師兄們,當時你們的專案在解決這個問題的時候是怎麼處理的。我先描述一下我所遇到的兩次專案的情況 都是用的c 拋磚引玉。我所說的條件控制,就是每個頁面上的conditions control,每個頁面需要查詢資料,但是需要指定具體的條件,也就是一些textbox c...