Use threading instead of multiprocessing on Windows
multiprocessing isn't able to copy the socket on Windows: "AttributeError: 'module' object has no attribute 'fromfd'"
This commit is contained in:
parent
8f12ca7a5a
commit
ddcc1f0e1f
|
|
@ -904,6 +904,17 @@ Sec-WebSocket-Accept: %s\r
|
||||||
self.msg('%s: exiting due to --run-once'
|
self.msg('%s: exiting due to --run-once'
|
||||||
% address[0])
|
% address[0])
|
||||||
break
|
break
|
||||||
|
elif sys.platform == 'win32':
|
||||||
|
import threading
|
||||||
|
self.vmsg('%s: new handler Thread' % address[0])
|
||||||
|
import pickle
|
||||||
|
selfcopy = pickle.loads(pickle.dumps(self))
|
||||||
|
p = threading.Thread(
|
||||||
|
target=selfcopy.top_new_client,
|
||||||
|
args=(startsock, address))
|
||||||
|
p.daemon = True
|
||||||
|
p.start()
|
||||||
|
startsock = None
|
||||||
elif multiprocessing:
|
elif multiprocessing:
|
||||||
self.vmsg('%s: new handler Process' % address[0])
|
self.vmsg('%s: new handler Process' % address[0])
|
||||||
p = multiprocessing.Process(
|
p = multiprocessing.Process(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue