c ++ - max værdi for SO\_RCVBUF i Windows?

Indlæg af Hanne Mølgaard Plasc

Problem



Hurtigt spørgsmål, undrende om nogen vidste, hvad grænsen er for SO\_RCVBUF under Windows.

Bedste reference


SO\_RCVBUF i winsock er ikke begrænset af TCP-vinduets størrelse. I hvert fald for pre-Vista stabler. Det ville være begrænset af ikke-paged pool tilgængelighed, hvilket er et helt andet emne.
Så du kan gøre det ret stort, hvis du vil.


Obligatorisk uopfordret rådgivning: Hvis du bruger en stor buffer, fordi du modtager sjældent, vil jeg undersøge asynkron I/O med hændelser/vælg/færdiggørelsesporte.

Andre referencer 1


Jeg kan ikke huske sikkert, men jeg tror, ​​at Windows understøtter POSIX-funktionen fpathconf() med indstillingen \_PC\_SOCK\_MAXBUF. Hvis det er tilfældet, er det præcis det, du leder efter.

Andre referencer 2


Baseret på denne artikel ser det ud til, at maksimum er 64K. [3]