Dalam aplikasi saya, saya perlu melakukan serangkaian langkah inisialisasi, ini membutuhkan 7-8 detik untuk menyelesaikan di mana UI saya menjadi tidak responsif. Untuk mengatasi ini saya melakukan inisialisasi di utas terpisah:
public void Initialization()
{
Thread initThread = new Thread(new ThreadStart(InitializationThread));
initThread.Start();
}
public void InitializationThread()
{
outputMessage("Initializing...");
//DO INITIALIZATION
outputMessage("Initialization Complete");
}
Saya telah membaca beberapa artikel tentang BackgroundWorker
dan bagaimana seharusnya memungkinkan saya untuk menjaga aplikasi saya responsif tanpa harus menulis utas untuk melakukan tugas yang panjang tapi saya belum berhasil menerapkannya, adakah yang bisa mengatakan bagaimana saya akan melakukan ini menggunakan BackgroundWorker
?