Python mempercepatkan masalah menjalankan program
PHPz
PHPz 2017-05-18 10:45:07
0
3
654

Andaian:

def get(url):
    #这里是get请求
    return url

for i in urls:
    get(i)
#这里采用循环去调用请求
#这样速度好像比较慢,有什么方法可以
#当多个请求时,也可以快速完成程序

Terima kasih

PHPz
PHPz

学习是最好的投资!

membalas semua(3)
左手右手慢动作
>>> from eventor import Eventor
>>> urllist = ["https://a.com", ....]
>>> def get(url):
        # 网络IO耗时
        return url
>>> e = Eventor(threadcount=3, taskunitcount=3, func=get, interval=1)
>>> result = e.run_with_tasklist(urllist)
>>> print(result)

Anda boleh memilih berbilang teras, berbilang proses atau berbilang benang mengikut keperluan anda, coroutine mempercepatkan pemprosesan.

Alih butiran: https://github.com/kute/eventor

Kami akan menambah async await, pekerja saderi, dll. pada masa hadapan

漂亮男人

Beberapa kaedah boleh digunakan secara gabungan

  1. coroutine

  2. multiprocess

  3. multithread

  4. pekerja saderi

洪涛

Pengubahsuaian paling mudah ialah menggunakan multiprocessing.dummy untuk melaksanakan tugas berbilang benang Anda boleh menyemaknya, menetapkan bilangan utas, dan kemudian ia boleh digunakan tanpa banyak pengubahsuaian pada program.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!