在Python中,使用线程多次调用函数容易吗?
假设我有一个简单的函数,它的工作是连接到一个数据库(或者一个消息队列),然后获取一个还没有被访问过的网址,接着去抓取这个网址的HTML内容。
现在这个过程是串行的,也就是说它一次只能从一个网址抓取HTML。那我该怎么做才能让这个过程更快一些呢?可以通过使用多个线程来一起处理。
2 个回答
0
你可以通过以下几种方式来实现这个:
- 使用
thread
模块(如果你的任务是一个函数的话) - 使用
threading
模块(如果你想把任务写成threading.Thread
的子类) - 使用
multiprocessing
模块(这个模块的使用方式和threading
类似)
这些模块都可以在 Python 的标准库中找到(从 2.6 版本及以后都有),而且你也可以在早期版本中获取 multiprocessing 模块(只是当时它还没有和 Python 一起打包)。