我只是不能设法添加多线程到我的UDP服务器。 第二个客户端可以连接,但是当有人已经连接到服务器时,它会立即被抛出服务器。Python:UDP代理多线程
这可能是由SingleThreading以外的其他原因造成的吗?
import sys, socket
localPort, remoteHost, remotePort = sys.argv[1].split(':')
try:
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(('', localPort))
except:
fail('Failed to bind on port ' + str(localPort))
knownClient = None
knownServer = (remoteHost, remotePort)
sys.stderr.write('Ready.\n')
while True:
data, addr = s.recvfrom(32768)
print addr
if knownClient is None:
knownClient = addr
if addr == knownClient:
try:
s.sendto(data, knownServer)
except:
pass
else:
try:
s.sendto(data, knownClient)
except:
pass
我很抱歉,但我是新来的Python。你能给我举个例子怎么做吗? – juggernawt