[ [quote=引用 7 楼 N27741 的回复:] 我是用 打电话 来理解的。 1、每个客户端有个电话号码,打给服务器 ,告诉他你要找的 另一个 或多个 电话号码。 服务器帮你找到,并把你的消息告诉其他的电话号码。 2、这个电话机 可以抽象成一个socket 电话号码类似里面的Ip+端口 服务器就是电信公司。 3、电信公司只要维护一个电话号码的集合(socket ,clientID ). 4、电信公司等待客户拨过来,然后 按要求 接通被叫的客户端。
[quote=引用 12 楼 N27741 的回复:] [quote=引用 8 楼 Jerryup 的回复:] [ [quote=引用 7 楼 N27741 的回复:] 我是用 打电话 来理解的。 1、每个客户端有个电话号码,打给服务器 ,告诉他你要找的 另一个 或多个 电话号码。 服务器帮你找到,并把你的消息告诉其他的电话号码。 2、这个电话机 可以抽象成一个socket 电话号码类似里面的Ip+端口 服务器就是电信公司。 3、电信公司只要维护一个电话号码的集合(socket ,clientID ). 4、电信公司等待客户拨过来,然后 按要求 接通被叫的客户端。
打个比方,我们用自己的手机拨打自己的手机时,是不可能行得通的~
[quote=引用 8 楼 Jerryup 的回复:] [ [quote=引用 7 楼 N27741 的回复:] 我是用 打电话 来理解的。 1、每个客户端有个电话号码,打给服务器 ,告诉他你要找的 另一个 或多个 电话号码。 服务器帮你找到,并把你的消息告诉其他的电话号码。 2、这个电话机 可以抽象成一个socket 电话号码类似里面的Ip+端口 服务器就是电信公司。 3、电信公司只要维护一个电话号码的集合(socket ,clientID ). 4、电信公司等待客户拨过来,然后 按要求 接通被叫的客户端。
我是用 打电话 来理解的。 1、每个客户端有个电话号码,打给服务器 ,告诉他你要找的 另一个 或多个 电话号码。 服务器帮你找到,并把你的消息告诉其他的电话号码。 2、这个电话机 可以抽象成一个socket 电话号码类似里面的Ip+端口 服务器就是电信公司。 3、电信公司只要维护一个电话号码的集合(socket ,clientID ). 4、电信公司等待客户拨过来,然后 按要求 接通被叫的客户端。
[quote=引用 楼主 Jerryup 的回复:] 我初学java,最近看韩顺平的网络编程,有个问题,客户端的socket用static修饰,做成静态的,也就是不管有多少客户端登录,都共享一个socket,服务器端把每个与客户端建立的连接保存在hashmap中,转发的时候再找到对应的socket,但是客户端共享一个socket,在接收服务器发来的消息时是怎么区分的呢?
我初学java,最近看韩顺平的网络编程,有个问题,客户端的socket用static修饰,做成静态的,也就是不管有多少客户端登录,都共享一个socket,服务器端把每个与客户端建立的连接保存在hashmap中,转发的时候再找到对应的socket,但是客户端共享一个socket,在接收服务器发来的消息时是怎么区分的呢?
62,621
社区成员
307,251
社区内容
加载中
试试用AI创作助手写篇文章吧