Python中的线程/多处理

Python中的线程/多处理,python,python-2.7,python-multithreading,Python,Python 2.7,Python Multithreading,我有以下代码: import SimpleHTTPServer import SocketServer def http_server(): PORT = 80 Handler = SimpleHTTPServer.SimpleHTTPRequestHandler httpd = SocketServer.TCPServer(("", PORT), Handler) httpd.serve_forever() 问题是,由于httpd.serve\u forev

我有以下代码:

import SimpleHTTPServer
import SocketServer

def http_server():
    PORT = 80
    Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
    httpd = SocketServer.TCPServer(("", PORT), Handler)
    httpd.serve_forever()

问题是,由于
httpd.serve\u forever()
,它挂起了程序的其余部分。我假设我可以使用线程在自己的线程上运行它,因此程序的其余部分可以独立于服务器执行,但我不确定如何实现这一点。

最简单的方法,直接来自:


请注意,该线程将很难按原样终止,键盘中断不会传播到您所设置的随机线程。
start()
ed。您可能需要设置
daemon=True
或使用更复杂的方法将其关闭。

您的导入应该在模块级别,而不是在function@RyanHaining对这是我在复制/粘贴代码时没有注意到的。太棒了!那正是我想要的,非常感谢。
from threading import Thread

t = Thread(target=http_server)
t.start()