Mengapakah pygame.event.get() Tidak Mengembalikan Acara dalam Benang Berasingan?

Linda Hamilton
Lepaskan: 2024-11-17 19:26:02
asal
328 orang telah melayarinya

Why Doesn't pygame.event.get() Return Events in a Separate Thread?

pygame.event.get() Tidak Mengembalikan Acara dalam Thread

Dalam percubaan untuk mengoptimumkan pengendalian input pengguna, pengguna telah melaksanakan benang untuk mengendalikan peristiwa input secara berasingan daripada gelung utama permainan. Walau bagaimanapun, masalah timbul apabila menggunakan pygame.event.get() dalam urutan, kerana ia tidak mengembalikan peristiwa.

Penjelasan terletak pada model penjalinan yang digunakan oleh pygame. Menurut dokumentasinya, subsistem acara mesti diakses dari utas utama. Ini bermakna walaupun mungkin untuk menyiarkan acara daripada urutan lain, baris gilir acara itu sendiri mesti dikendalikan dalam urutan utama.

Oleh itu, untuk menyelesaikan isu ini, seseorang tidak boleh memanggil pygame.event.get() di luar benang utama. Sebaliknya, seseorang harus menggunakan salah satu daripada pendekatan berikut:

  • Menyiarkan acara: Hantar acara dari utas berasingan ke utas utama menggunakan pygame.event.post() untuk berkomunikasi dengan pengguna input.
  • Menggunakan kelas EventQueue: Kelas pygame.event.EventQueue membenarkan acara pengendalian dalam benang berasingan. Dengan membuat baris gilir acara dan menghantarnya ke urutan, acara boleh diproses tanpa mengubah suai baris gilir acara utama.

Atas ialah kandungan terperinci Mengapakah pygame.event.get() Tidak Mengembalikan Acara dalam Benang Berasingan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan