Python:如何执行线程并返回主线程

4 投票
1 回答
2058 浏览
提问于 2025-04-18 07:53

我正在尝试在Python中进行异步的HTTP请求。我使用的是requests库,这个库非常好用,但它不支持异步功能。

每次我想发送一个HTTP请求时,我都会启动一个新的线程。这个线程运行得很好,应该会在主线程中返回响应,这样我就可以执行一个回调方法。

我目前是这样使用threading模块的:

class MyConnection
    # ...
    def make_request(self):
        # Use requests lib here
        response = requests.request(...)
        self.receive_response(response)

    def receive_response(self):
        # process response here because it is my callback method

    def start(self):
        thread = threading.Thread(target=self.make_resquest)
        thread.start()

一切都运行得很好,但receive_response方法应该在主线程中被调用,而不是我在start方法中启动的那个线程。我该如何回到主线程来执行receive_response方法呢?

非常感谢你的帮助!

1 个回答

暂无回答

撰写回答