python3多线程爬虫_【Python3 爬虫】U23_多线程爬虫之初识多线程
1.什么是"多線程"?
多線程是為了同步完成多項任務,通過提高資源使用效率來提高系統的效率。線程是在同一時間需要完成多項任務的時候實現的。舉個最簡單的例子說明:多線程就像火車的每一個車廂,而進程則是火車。
并發:指的是任務數多余cpu核數,通過操作系統的各種任務調度算法,實現用多個任務“一起”執行(實際上總有一些任務不在執行,因為切換任務的速度相當快,看上去一起執行而已)。
并行:指的是任務數小于等于cpu核數,即任務真的是一起執行的。
2.threading模塊
Python中的threading模塊是專門用來做多線程編程的,threading模塊中最常用的類是Thread,下面是一個簡單的小案例:
以下是一個跳舞、唱歌的場景,某人可以先跳會舞,再唱會歌,但是為了節省時間,他也可以一邊跳舞一邊唱歌。
不使用多線程
import time
def dance():
# 跳舞5s中
for x in range(1,6):
print('我正在跳舞,%s秒' %x)
time.sleep(1)
def sing():
# 唱歌5s中
for x in range(1,6):
print('我正在唱歌,%s秒' %x)
time.sleep(1)
def main():
dance()
sing()
if __name__ == '__main__':
main()
打印結果:
使用多線程
import threading
import time
def dance():
# 跳舞5s中
for x in range(1,6):
print('我正在跳舞,%s秒' %x)
time.sleep(1)
def sing():
# 唱歌5s中
for x in range(1,6):
print('我正在唱歌,%s秒' %x)
time.sleep(1)
def main():
t1 = threading.Thread(target=dance)
t2 = threading.Thread(target=sing)
t1.start()
t2.start()
if __name__ == '__main__':
main()
打印結果:
總結
以上是生活随笔為你收集整理的python3多线程爬虫_【Python3 爬虫】U23_多线程爬虫之初识多线程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jstat -gcutil 输出结果分析
- 下一篇: python编程的条件语句_Python