繁体   English   中英

Python中的线程/多处理

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM