回答編集履歴

2

ObjectDisposedExceptionについて

2018/04/18 04:55

投稿

umyu
umyu

スコア5846

test CHANGED
@@ -56,6 +56,8 @@
56
56
 
57
57
  var listener = res.AsyncState as TcpListener;
58
58
 
59
+ // EndAcceptTcpClient呼び出し時にObjectDisposedExceptionが発生する可能性があるので、例外をキャッチする必要があります。
60
+
59
61
  var client = listener.EndAcceptTcpClient(res);
60
62
 
61
63
  // 次のAcceptを非同期で呼び出し。

1

追記

2018/04/18 04:55

投稿

umyu
umyu

スコア5846

test CHANGED
@@ -1,4 +1,4 @@
1
- Unityはサンプルを弄ったレベルですが、TcpListenerの使い方が気になったので回答します。
1
+ **Unityはサンプルを弄ったレベルですが、TcpListenerの使い方が気になったので回答します。**
2
2
 
3
3
 
4
4
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  この件は`Unity WebSocket`のキーワードで検索してみるのをお勧め致します。
10
10
 
11
- TcpListenerを使うより楽に開発できるかと。
11
+ `TcpListener`を使うより楽に開発できるかと。
12
12
 
13
13
 
14
14
 
@@ -16,13 +16,15 @@
16
16
 
17
17
  以下は質問文のコードについての回答です。
18
18
 
19
- 1,TcpListener#Startメソッドの呼び出し必要す。
19
+ 1,`TcpListener#Start`メソッドの呼び出しを行い受信ポートを`Listen`状態にする必要があります。
20
20
 
21
- 2,TcpListener#EndAcceptTcpClientした直後にTcpListener#BeginAcceptTcpClientをして次のAcceptを非同期で待機する必要があります。
21
+ 2,`TcpListener#EndAcceptTcpClient`した直後に`TcpListener#BeginAcceptTcpClient`をして次のAcceptを非同期で待機する必要があります。
22
22
 
23
23
 
24
24
 
25
- DoAcceptTcpClientCallbackの宣言にstaticが付いているのが気になります。
25
+ `DoAcceptTcpClientCallback`の宣言に`static`が付いているのが気になります。
26
+
27
+ コンパイルを通してませんが、以下のような形にもできると思います。
26
28
 
27
29
 
28
30