ソケット通信でSocket.BeginReceiveを利用して非同期受信しています。
ある時間受信がされなかったら、BeginReceiveを中止したくなったのですが
EndReceiveを使用すると、受信するまでブロックしてしまうので困っています。
一応ブロックされずに中止するにはSocket.Closeすればできるの分かったのですが
他にCloseしなくてもできる方法はありませんか。