Saya punya pertanyaan gaya tentang pilihan implementasi latar belakang thread yang harus saya gunakan pada aplikasi windows form. Saat ini saya memiliki BackgroundWorkerformulir yang memiliki infinite (while(true))loop. Dalam loop ini saya gunakan WaitHandle.WaitAnyuntuk menjaga agar thread tetap tertunda sampai sesuatu yang menarik terjadi. Salah satu pegangan acara yang saya tunggu adalah acara " StopThread" sehingga saya bisa keluar dari loop. Peristiwa ini ditandai ketika saya ditimpa Form.Dispose().
Saya membaca suatu tempat yang BackgroundWorkerbenar-benar ditujukan untuk operasi yang Anda tidak ingin mengikat UI dengan dan memiliki akhir yang terbatas - seperti mengunduh file, atau memproses urutan item. Dalam hal ini "akhir" tidak diketahui dan hanya ketika jendela ditutup. Oleh karena itu apakah lebih tepat bagi saya untuk menggunakan Thread latar belakang daripada BackgroundWorkeruntuk tujuan ini?