[英]Threading/Multiprocessing in Python
我有以下代码:
import SimpleHTTPServer
import SocketServer
def http_server():
PORT = 80
Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
httpd = SocketServer.TCPServer(("", PORT), Handler)
httpd.serve_forever()
这样做的问题在于,由于httpd.serve_forever()
,它会挂起程序的其余部分。 我假设我可以使用线程在自己的线程上运行它,所以程序的其余部分可以独立于服务器执行,但我不知道如何实现它。
最简单的方法,直接来自文档 :
from threading import Thread
t = Thread(target=http_server)
t.start()
请注意,此线程很难按原样终止,KeyboardInterrupts不会传播到您已start()
编辑的随机线程。 您可能希望设置daemon=True
或使用一些更复杂的方法来关闭它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.