質問

私は次のカスタムクラスを実装しようとしています:

IList<ArraySegment<byte>>

これはソケットに渡され、そのソケットからデータを受信するためのバッファとして使用されます。

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

MSDN ドキュメント

テスト中に、電話をかけるときにそれが判明しました

BeginReceive(IList..

ブロックしてる?!これを BeginReceive(byte[]... に置き換えると)は非同期的に動作します。

他にこれに遭遇した人はいますか?

必要に応じてテストコードを投稿しますが、この質問を難解にする前に誰かからの意見を聞きたいです:)

ありがとう!

役に立ちましたか?

解決

それで!問題が分かりました。

私が持っていたように、

Console.WriteLine

私の習慣で存在する

IList<ArraySegment<byte>>

その場合、メソッドはコンパイル時に非同期的に動作しませんでした:)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top