学习目标:
1、结合服务器端多线程处理客户端连接
学习过程:
上一节的中我们只是实现了一次通讯,下面我们要做的例子可以允许多个客户机,多次发送信息给服务器。
一、思路
要实现这个功能,服务器需要不断的等待新的客户机连接,每一个新的客户机连接,我们就启动一个新的线程来维护与当前的客户机的socket连接,客户输入“bye”是,这个客户就退出。如果你忘记了线程,最好先回去复习一下。思路图如下:
二、实现代码
1、与客户端对应的线程类。实现代码如下:
1 2
扫描二维码关注公众号,回复:
3960193 查看本文章
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
|
2、服务端代码。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
3、客户端代码。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
|
4、测试。
把所有的类复制到D:盘中,使用Dos控制台,服务器使用一个控制台,每一个客户端一个Dos控制台。
也是先编译,然后启动服务类:
这时候你可以多打开几个Dos控制台运行客户机类。
这节课的内容比较需要好好理解,为明天我们做一个多人聊天系统做好准备,希望大家先把这节课的内容好好理解后,再看明天的内容。