2010-10-15 57 views

回答

2

32個字節的SO_SNDBUF插座選項不具有用於Unix域sock- 的效果ets,但SO_RCVBUF選項不。對於數據報套接字,SO_SNDBUF值對傳出數據的大小施加了上限-- 克。此限制計算爲加倍(見插座(7))選項 值小於32字節用於開銷。

+0

這就是我要找的,謝謝!我的基於RHEL4的盒子在'unix','un.h'或任何與套接字相關的手冊頁(全部註明於'02/03'年初)中沒有任何內容,所以我放棄了一下過早。 – Jeff 2010-10-15 18:58:45

1

您的數據報將在套接字發送/接收緩衝區中排隊,最多可分別達到SO_SNDBUF和SO_RCVBUF的最大值。 Datagrams將放棄超過此限制。

請注意,數據報沒有您輸入的數據的確切大小。

我不記得,但我認爲你可以調整這些設置。不過,在處理UDP套接字時要自己做緩衝,這總是很明智的。

編輯:對不起,對,你是。這可能是有用的:

的SO_SNDBUF套接字選項確實有 用於Unix域sock- ETS的影響,但SO_RCVBUF選項沒有。對於數據報 套接字,SO_SNDBUF值對傳出的數據大小施加上限。這個限制是從man unix

計算爲加倍(參見 插座(7))選項 少值用於架空

+1

這些不是UDP套接字。 PF_UNIX(AF_UNIX)而不是PF_INET或PF_INET6(AF_INET或AF_INET6) – nategoose 2010-10-15 16:00:48

+0

哦,對不起!你去,編輯。 – slezica 2010-10-15 16:03:44