コードの一部が意図したよりも速く処理されるという問題があります。私は client.BeginConnect を呼び出すと、他のコードが処理される前に接続される場合があります。
例:
client.BeginConnect(remoteEP, new AsyncCallback(ConnectCallback), client);
// this code below is preformed later because ConnectCallback is called to quickly
Debug.WriteLine(client.LocalEndPoint.ToString());
ここでの問題は、メソッド ConnectCallback がコード Debug.Writeline(....) よりも高速に実行される場合があることです。ConnectCallback 関数をブロックまたは有効にするだけでよいため、Debug.Writeline は ConnectCallback よりも高速に実行されます。
手伝ってくれてありがとう。