當用SO_RECVBUF調用setsockopt,然後轉身用SO_RECVBUF調用getsockopt時,它似乎告訴我它將緩衝區大小設置爲我要求設置的兩倍。有人知道爲什麼這可能是?getsockopt SO_RECVBUF做了一個set後,在linux中顯示了兩倍的值?
代碼問題:
https://gist.github.com/rdp/8443238
輸出:
setting it as 2222
[udp @ 0x1a72ec0] end receive buffer size reported is 4444
只有在linux下,對其他操作系統的似乎其報告爲我設置的值。 謝謝。
可能重複[Understanding set/getsockopt SO \ _SNDBUF](https://stackoverflow.com/questions/2031109/understanding-set-getsockopt-so-sndbuf) – rogerdpack