Ob'ektga so'nggi jonli havola Timeryo'qolganidan


Download 22.15 Kb.
Sana22.06.2023
Hajmi22.15 Kb.
#1648793
Bog'liq
Mobil


Har bir Timerob'ektga mos keladigan, taymerning barcha vazifalarini ketma-ket bajarish uchun ishlatiladigan bitta fon oqimi. Taymer vazifalari tezda bajarilishi kerak. Agar taymer vazifasini bajarish uchun ortiqcha vaqt kerak bo'lsa, u taymer topshirig'ining bajarilishini "to'ng'izlaydi". Bu, o'z navbatida, keyingi vazifalarning bajarilishini kechiktirishi mumkin, ular "to'planishi" va qoidabuzarlik tugashi bilan (va agar) tezda ketma-ket bajarilishi mumkin.


Ob'ektga so'nggi jonli havola Timeryo'qolganidan va barcha bajarilmagan vazifalar bajarilgandan so'ng, taymerning vazifalarni bajarish chizig'i chiroyli tarzda tugaydi (va axlat yig'ilishiga tobe bo'ladi). Biroq, bu o'zboshimchalik bilan uzoq vaqt davom etishi mumkin. Odatiy bo'lib, vazifani bajarish ipi daemon ipi sifatida ishlamaydi , shuning uchun u dasturni tugatilishidan saqlay oladi. Agar qo'ng'iroq qiluvchi taymerning vazifani bajarish oqimini tezda to'xtatmoqchi bo'lsa, qo'ng'iroq qiluvchi taymer cancelusulini chaqirishi kerak.
Taymerning topshiriqni bajarish oqimi kutilmaganda tugatsa, masalan, uning stopusuli chaqirilganligi sababli, taymerda vazifani rejalashtirishga har qanday keyingi urinish IllegalStateExceptiontaymer cancel usuli chaqirilgandek natijaga olib keladi.
Bu sinf iplar uchun xavfsiz: bir nechta iplar Timertashqi sinxronizatsiyaga muhtoj bo'lmasdan bitta ob'ektni almashishi mumkin.
Android Studio'da Timer (taymer) bilan ishlash, ma'lum bir vaqt davomida amal bajarish imkonini beradi. Bu, belgilangan vaqt ichida amal bajarish, bir taskni belli bir gecikme bilan boshlash va belgilangan intervalga asoslangan takrorlashlarni o'z ichiga oladi. Timer bilan ishlash uchun quyidagi qadamlarni amalga oshiring:


  1. Birinchi navbatda, Android Studio'da loyihangizni oching va Timer bilan ishlashni istagan aktiv yoki sinfdagi faylni toping.



  1. Timer'ni boshlash uchun Timer obyektini yaratishingiz kerak. Buning uchun quyidagi qatorni yozing:

Java
Timer timer = new Timer();





  1. Amalni boshlashdan oldin bir gecikme o'rnatishingiz kerak. Misol uchun, 1 sekund gecikme uchun:

Java
Timer.schedule(new TimerTask() {


@Override
Public void run() {
// Amalni boshlash uchun kodni yozing
}
}, 1000);



  1. Timer obyektida takrorlashni sozlash uchun scheduleAtFixedRate yoki schedule metodlaridan foydalanishingiz mumkin. Misol uchun, belgilangan vaqt oralig'ida takrorlashni boshlash uchun:

Java
Timer.scheduleAtFixedRate(new TimerTask() {


@Override
Public void run() {
// Takrorlanadigan kodni yozing
}
}, delay, period);

Delay o'zgartiruvchisi birinchi takrorlashgacha gecikma vaqtini, period esa takrorlashlar orasidagi gecikma vaqtini belgilaydi.




  1. Timer obyektini to'xtatish uchun cancel() metodidan foydalanishingiz mumkin. Misol uchun:

Java
Timer.cancel();




Bu usullar orqali Android Studio'da Timer bilan ishlashni amalga oshirishingiz mumkin. Ushbu usullar sizga amalni belgilangan vaqt oralig'ida bajarish, takrorlash va to'xtatish imkonini beradi.
Download 22.15 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling