回答編集履歴
2
ObjectDisposedExceptionについて
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
追記
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
|
|