Rumah > Soal Jawab > teks badan
另外请问一下使用
queue.join()
queue.task_done()
和
while not workQueue.empty():
pass
这两种方式来判断队列中是否还有任务的机制有区别吗?哪种更好呢?
怪我咯2017-04-18 09:59:50
Ia bergantung pada reka bentuk dan senario penggunaan anda.
queue.join akan menyekat sehingga semua mesej dalam baris gilir diambil dan task_done dipanggil sebelum kembali. Biasanya digunakan untuk menunggu semua tugas diproses dan kemudian keluar dari proses.
Kosong akan kembali serta-merta Apabila menyemak dengan gelung while anda, jika baris gilir kosong, benang akan terus bergelung tanpa henti. Menunggu dalam satu gelung memakan banyak CPU.