2010-11-11 90 views

回答

4

OpenGroup定義的write():

成功完成後,寫() [XSI]和pwrite()應當返還 數量實際上寫入 文件的字節與fildes關聯。這個 的數字永遠不會大於 nbyte。否則,返回-1將返回 ,並設置errno來指示錯誤。

同樣的事情對發送完成() - OpenGroup頁的send()

你會發現通過查看錯誤號的詳細信息。有關更多信息,請參閱errno上的OpenGroup頁面。

+0

這裏的成功完成是什麼?將數據寫入內核緩衝區或TCP從遠程端接收數據的確認? – Blacklabel 2010-11-11 00:33:18

+0

成功寫入內核緩衝區。 – 2010-11-11 00:37:04

+0

@Blacklabel - 來自send()頁面:「成功完成對send()的調用並不保證消息的傳遞。返回值-1表示只有本地檢測到的錯誤。」 – 2010-11-11 00:48:41

0

您的具體點 - 如果你寫呼叫阻塞,(因爲是默認值),溢出只想你,直到有可用的緩衝空間。

如果寫電話是無阻塞和緩衝區都滿了,你會收到一個錯誤。