Toshkent axborot texnologiyalari universiteti samaroand filiali


Download 39.75 Kb.
bet3/4
Sana17.06.2023
Hajmi39.75 Kb.
#1539658
1   2   3   4
Bog'liq
thereds

Yangi thread yaratish
Threadni amalga oshirishga ikki yo’l bilan erishish mumkin:

  1. Extending the Thread class

  2. Implementing the Runnable Interface

1. Extending the Thread class
- Bizni klas Thread klasidan meros olishi kerak
- Klas run () metodini override qilishi kerak.
- Thread tomonidan bajarilishi kutilgan funksiya run () metodida yoziladi.
- Threadni boshlash uchun yangi Thread ob’ekti yarating va keyin start () metodini chaqiring.
void start (): yangi thread yaratadi va uni ishlashga yaroqli qiladi.
void run (): yangi thread o’z hayotini ushbu metod ichida boshlaydi.
Misol:

2) Runnable interfeysini implementing qilish orqali
- Klas Runnable interfeysini implement qilish kerak
- Klas run () metodini override qilishi kerak.
- Thread tomonidan bajarilishi kutilgan funksiya run () metodiga kiritilgan
- Threadni boshlash uchun ishga tushiriladigan runnableni yangi Thread ob’ektiga o’tkazing va keyin start () ni chaqiring.
Misol:
Thread klasini extend va Runnable Interfeysni Implement qilish
Thread sinfini kengaytirish(extend)dan keyin, JAVA-dagi yagona meros xususiyati tufayli boshqa klaslardan meros ololmaydi. Biroq, bu sizga oddiyroq kod tuzilishini beradi. Lekin Runnable interfeysini implement qilishingiz mumkin.
- Agar siz shunchaki threadning asosiy funktsiyalariga erishmoqchi bo’lsangiz, shunchaki Runnable interfeysini ishga tushirishingiz va run () metodini override qilishingiz kerak. Agar siz thread ob’ekti bilan jiddiy biron bir narsa qilishni xohlasangiz, Thread klasini extend qilishingiz kerak
Worker Thread
Single-threaded-model dizayniga ko’ra, application UI threadini blok qilmasligingiz kerak. Agar sizda uzoq vaqtli operatsiyalar bo’lsa uni fonda yoki worker threadda amalga oshirish kerak.
Misol:
Yuqoridagi misolda, ExampleThread log bayonotini bajaradi i soni 4ga teng bo’lguncha va 5 ga teng bo’lganda crash bo’ladi.
Logcat-da siz xato haqidagi xabarni ko’rishingiz mumkin: Only the original thread that created a view hierarchy can touch its views. Bu yerda aniq aytildiki, siz UIga boshqa threaddan kalla suqolmaysiz, UI threadidan boshqa.
Ushbu muammoni hal qilish uchun Android bir nechta variant beradi:
1   2   3   4




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