Meluluskan Pelaksanaan kepada Benang Utama dalam Persekitaran Berbilang Benang
Dalam pengaturcaraan berbilang benang, terutamanya dalam perkhidmatan Android, situasi mungkin timbul di mana urutan latar belakang perlu berinteraksi dengan utas utama. Keperluan biasa ialah menyiarkan tugas, seperti Runnables, pada baris gilir mesej utas utama.
Penyelesaian dengan Rujukan Konteks
Jika urutan latar belakang mempunyai akses kepada Konteks objek, sama ada konteks Aplikasi atau Perkhidmatan boleh digunakan untuk mendapatkan Pengendali untuk utama benang:
Handler mainHandler = new Handler(context.getMainLooper()); Runnable myRunnable = new Runnable() { @Override public void run() { // Code to execute on the main thread } }; mainHandler.post(myRunnable);
Penyelesaian Tanpa Rujukan Konteks
Dalam kes di mana urutan latar belakang tidak mempunyai rujukan Konteks, pendekatan alternatif yang dicadangkan oleh @dzeikei boleh digunakan :
Handler mainHandler = new Handler(Looper.getMainLooper()); Runnable myRunnable = new Runnable() { @Override public void run() { // Code to execute on the main thread } }; mainHandler.post(myRunnable);
Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Pelaksanaan ke Benang Utama dalam Android: Dengan dan Tanpa Konteks?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!