一.套接字的地址是由”网络接口地址”+”端口”组合而来;
socket's_addr=Socket.pack_socketaddr_in(4481,"0.0.0.0")
Socket类把两条线分别搭在端口和网络接口上,两条线的中间就是socket的一个实例;
原因在于,你不能让socket只能和网络接口有关;
因为按照计算机的构造,端口是有必要存在的,因此必须要考虑到端口;
设想网络接口是火线,端口是零线,socket就是插座.socket地址即插座的标签;
二.插座设置好之后,如果没有其他操作,将不会产生networking;
众所周知,这是常识 - -;
必然有一个设置,开关或者什么,来把插座投入使用;
connection, _=some_socket.accept
accept就是开关;
三.奇异的地方在于,这个插座是模板
如果这个插座不是模板,那么被占用之后;
如果还有外部的连接申请,那么其他针对该”Interface+Port”的利用将遭到拒绝;
因此这个插座是模板~
我猜想每一个线程会接管一个’对”Interface+Port”的利用 ‘;
否则模板是没有必要的,假如说一次只能处理一个连接的话;
外部申请利用这对”Interface+Port”组合时,实际上就是申请从一个这样的纯净的,未加以利用的模板上复制出一个新的插座