Das Flag MSG_WAITALL
kann für recv
verwendet werden, das recv
anfordert, zu blockieren, bis die vollständige Anforderung erfüllt ist. Das bedeutet, recv
wird nicht zurückgegeben, bis so viele Daten wie angefordert (angegeben durch das Argument len
) empfangen wurden, es sei denn, ein Fehler tritt auf oder die Verbindung wurde geschlossen.Warum gibt es kein Flag wie MSG_WAITALL zum Senden?
Warum gilt solch ein Flag nicht auch für send
? Ich denke, dass es sehr nützlich für das Senden wäre (send
kehrt nicht zurück, bis ALLE Bytes, die der Anrufer senden möchte, an den TCP-Sendepuffer übergeben wurde)
Was, zu warten, bis die andere Seite es erhält? –