質問編集履歴
3
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
サーバーの並行型通信の課題でコメント1~4について
|
1
|
+
サーバーの並行型通信の課題で、コメント1~4については自分で考えてプログラムを記述するという内容の課題なのですが
|
2
|
-
|
2
|
+
|
3
|
-
正常に動作しません。
|
3
|
+
正常に動作しませんでした。
|
4
4
|
|
5
5
|
Client1(0.0.0) connected
|
6
6
|
|
@@ -8,6 +8,8 @@
|
|
8
8
|
|
9
9
|
と一度に表示されてしまいます。
|
10
10
|
|
11
|
+
つまりメッセージの送受信が出来ない状態です。
|
12
|
+
|
11
13
|
何が原因か具体的に教えて欲しいです。
|
12
14
|
|
13
15
|
環境はLinuxのターミナルで動かしています。
|
2
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
サーバーの並行型通信の課題でコメント1~4について追加でプログラムを書いたのですが
|
2
2
|
|
3
|
-
|
3
|
+
正常に動作しません。
|
4
|
+
|
5
|
+
Client1(0.0.0) connected
|
6
|
+
|
7
|
+
Client1 disconnected
|
8
|
+
|
9
|
+
と一度に表示されてしまいます。
|
4
10
|
|
5
11
|
何が原因か具体的に教えて欲しいです。
|
6
12
|
|
1
コメントの詳細を加えました
test
CHANGED
File without changes
|
test
CHANGED
@@ -122,7 +122,7 @@
|
|
122
122
|
|
123
123
|
|
124
124
|
|
125
|
-
//1
|
125
|
+
//1. 引数用の構造体のメモリを確保する
|
126
126
|
|
127
127
|
args = (struct ThreadArgs *)malloc(sizeof(struct ThreadArgs));
|
128
128
|
|
@@ -130,7 +130,7 @@
|
|
130
130
|
|
131
131
|
|
132
132
|
|
133
|
-
//2
|
133
|
+
//2.通信用ソケットディスクリプタ、クライアント番号、アドレス構造体を確保した構造体にセット
|
134
134
|
|
135
135
|
args->sock = listen_sock;
|
136
136
|
|
@@ -142,7 +142,7 @@
|
|
142
142
|
|
143
143
|
|
144
144
|
|
145
|
-
//3
|
145
|
+
//3.pthread_create()でスレッドを作成
|
146
146
|
|
147
147
|
if (pthread_create(&thread_id, NULL, (void *)thread, (void *)args) != 0){
|
148
148
|
|
@@ -178,7 +178,7 @@
|
|
178
178
|
|
179
179
|
|
180
180
|
|
181
|
-
//4
|
181
|
+
//4.argから通信用ソケットディスクリプタ、クライアント番号、アドレス構造体を取得し、それぞれsock,cnt,saにセット
|
182
182
|
|
183
183
|
sock = ((struct ThreadArgs *)arg)->sock;
|
184
184
|
|