Буферы Socket.BeginReceive (IList<ArraySegment <byte >>) не асинхронны?

Я искал, чтобы реализовать пользовательский класс:

IList<ArraySegment<byte>>

это будет передано сокету и использовано в качестве буфера для получения данных от этого сокета.

Socket.BeginReceive(
    IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object
    )

Документация MSDN

Во время тестирования я обнаружил, что при звонке

BeginReceive(IList..

Это блокирует?! При замене этого на BeginReceive(byte[]... действует асинхронно.

Кто-нибудь еще сталкивался с этим?

Я опубликую свой тестовый код, если потребуется, но хотел бы услышать от кого-либо, прежде чем я уточнить этот вопрос:)

Спасибо!

1 ответ

Решение

Так! Я выяснил проблему.

Как у меня было

Console.WriteLine

присутствует в моем обычае

IList<ArraySegment<byte>>

тогда метод не работал асинхронно при компиляции:)

Другие вопросы по тегам