Pengurusan Thread yang Betul dengan ValueEventListeners dalam Firebase
Firebase ValueEventListener dijalankan pada urutan yang berasingan, menimbulkan kebimbangan tentang pengurusan thread. Untuk memastikan penggunaan sumber yang cekap, anda harus mengalih keluar ValueEventListeners apabila sesuai berdasarkan kitaran hayat aplikasi anda.
Bila untuk Mengalih keluar ValueEventListeners
Sebagai peraturan umum, anda harus mengalih keluar ValueEventListeners apabila aktiviti yang berkaitan tidak lagi aktif. Ini boleh dilakukan dalam kaedah kitaran hayat berikut:
Cara Mengalih Keluar ValueEventListeners
Untuk mengalih keluar ValueEventListener, gunakan kod berikut:
databaseReference.removeEventListener(valueEventListener);
Kelebihan Menanggalkan ValueEventListeners
Dengan mengalih keluar ValueEventListeners dengan betul, anda boleh:
Pendekatan Alternatif: addListenerForSingleValueEvent
Dalam sesetengah kes, anda mungkin tidak perlu mengalih keluar ValueEventListener. Kaedah addListenerForSingleValueEvent:
Contoh Menggunakan ValueEventListener Dengan Betul (dengan Pembuangan)
@Override protected void onStart() { super.onStart(); DatabaseReference Ref = FirebaseDatabase.getInstance().getReference(Constants.Client + "/" + path); Ref.keepSynced(true); Ref.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { } @Override public void onCancelled(DatabaseError databaseError) { } }); } @Override protected void onStop() { super.onStop(); Ref.removeEventListener(valueEventListener); }
Atas ialah kandungan terperinci Bagaimana Menguruskan Firebase ValueEventListeners dengan Betul untuk Mengoptimumkan Prestasi Apl?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!