如何停止SocketServer()?

假设我有一个服务器(SocketServer()的一个实例)
等待一个连接(即在Accept()中被阻止)和另一个连接
线程我想停止服务器,我该怎么做?

# 回答1


Alexandru Mosoi写道:
通过使用socket.settimeout在套接字上设置超时,然后
在此之前,请定期检查服务器线程中的中止条件
重新接受连接.
迪兹
# 回答2


On Wed,2008.27 18:44:46+0200,《Diez B.Roggisch》
您还可以使用SELECT()调用轮询活动.为
示例:
...
LOCAL_HOST=''#表示本地主机的符号名称
SERVER_PORT=socket.套接字(socket.AF_INET,socket.SOCK_STREAM)
Server_port.ind((LOCAL_HOST,LOCAL_PORT))
SERVER_PORT.LISTEN(1)
Readsock=[]
Readsocks.append(同步端口)
#"停止"将是您的停止条件,设置在别处
而HALT==FALSE:
可读、可写、异常=SELECT(READSOCKS,[],[],1)
#套接字是否有挂起的连接?
如果rver_port in Readables:
#处理客户端连接
CLIENT_CONN,CLIENT_ADDR=服务器_端口.Accept()
...

标签: python

添加新评论