PYTHON:多线程创建加速

本文介绍了如何在Python中使用多线程技术来加速程序执行,通过对比单线程和多线程爬取网页示例,展示了多线程在减少资源消耗上的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般的程序都是顺序执行,资源消耗开销大,我们可使用多线程方式加速,以下为例,仅供参考研究:

"python创建多线程"
import requests
import threading
import time

urls = [
    f'https://www.cnblogs.com/#p{page}'
    for page in range(1,50+1)
]

def craw(url):
    response = requests.get(url)
    print(url,len(response.text))


def single_thread():
    print("single_thread begin!")
    for url in urls:
        craw(url)
    print("single_thread end!")


def multi_thread():
    print("multi_thread begin!")
    threads = []
    for url in urls:
        threads.append(
            threading.Thread(target=craw,args=(url,))
        )
    # 线程开始
    for thread in threads:
        thread.start()

    # 线程等待
    for thread in threads:
        thread.join()
    print("multi_thread end!")

if __name__ =="__main__":
    start = time.time()
    single_thread()
    end = time.time()
    print("single thread:",end - start)
    start = time.time()
    multi_thread()
    end = time.time()
    print("multi_thread:", end - start)

单线程时间结果

多线程时间结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值