Я пошел искать это и нашел по крайней мере одного человека, который спросил, но не получил ответа. Я думаю, что необходимо запустить сегмент отправки и получения (часть более крупного процесса в том же соединении сокетов) и ожидать, что в буфере приема уже ничего нет.
Я не видел ответа, но подумал об этом клудже, прежде чем сам понял другой способ, который казался чище (читай "заканчивается на" в следующем сегменте). Просто установите RecieveTimeout на 1 или, если вы считаете, что отправитель все еще находится в процессе отправки, немного большее значение. Затем просто вызовите Receive с socketflags = 0 и отбросьте результаты.
У кого-нибудь есть лучший способ?