Requests: asinkron dan menunggu

Dibuat pada 3 Okt 2015  ·  1Komentar  ·  Sumber: psf/requests

Python 3.5 memperkenalkan coroutine dengan sintaks async dan menunggu. Spesifikasi tentang itu bisa dibaca di PEP 492 .

Apakah ada rencana untuk mendukung ini? Karena kelambatan jaringan atau koneksi lambat, masuk akal untuk membuat permintaan http asinkron.

Komentar yang paling membantu

@screendriver Saat ini tidak ada rencana untuk mendukung async dan menunggu. Ini bukan karena mereka bukan ide yang bagus: memang begitu. Itu karena untuk menggunakannya membutuhkan perubahan kode yang cukup besar.

Saat ini permintaan adalah pustaka sinkron murni yang, di bagian bawah tumpukannya, menggunakan httplib untuk mengirim dan menerima data. Kami tidak dapat pindah ke model async kecuali kami mengganti httplib. Yang terbaik yang bisa kami lakukan adalah memberikan singkatan untuk menjalankan permintaan di utas, tetapi asyncio sudah memiliki singkatan seperti itu, jadi saya tidak percaya itu akan berharga.

Saat ini saya diam-diam melihat apakah kita dapat menulis ulang permintaan agar berfungsi dengan baik di lingkungan sinkron seperti di lingkungan asinkron. Namun, kenyataannya adalah melakukannya akan membutuhkan banyak pekerjaan, melibatkan penulisan ulang banyak tumpukan kami, dan mungkin tidak akan terjadi selama bertahun-tahun, jika pernah.

>Semua komentar

@screendriver Saat ini tidak ada rencana untuk mendukung async dan menunggu. Ini bukan karena mereka bukan ide yang bagus: memang begitu. Itu karena untuk menggunakannya membutuhkan perubahan kode yang cukup besar.

Saat ini permintaan adalah pustaka sinkron murni yang, di bagian bawah tumpukannya, menggunakan httplib untuk mengirim dan menerima data. Kami tidak dapat pindah ke model async kecuali kami mengganti httplib. Yang terbaik yang bisa kami lakukan adalah memberikan singkatan untuk menjalankan permintaan di utas, tetapi asyncio sudah memiliki singkatan seperti itu, jadi saya tidak percaya itu akan berharga.

Saat ini saya diam-diam melihat apakah kita dapat menulis ulang permintaan agar berfungsi dengan baik di lingkungan sinkron seperti di lingkungan asinkron. Namun, kenyataannya adalah melakukannya akan membutuhkan banyak pekerjaan, melibatkan penulisan ulang banyak tumpukan kami, dan mungkin tidak akan terjadi selama bertahun-tahun, jika pernah.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat