Vazifani ketma – ket bajarilishini aniq boshqarilishi
Ko‘pchilik holatda ma’lumotlarni to‘plashda sizga kamdan – kam aniq o‘zaro ta’sir vazifa holatlari modelidan foydalanish kerak bo‘ladi, vazifaning o‘ziga bajarishni holatlar orasidagi noaniq o‘tishlardan foydalanishga ishonish mumkin. Ammo shunday holatlar mavjudki, qachonki aniq boshqarishni vazifalarni bajarish ketma – ketligidan foydalanishi zarur bo‘lib qoladigan holatlar bo‘ladi.
Verify – sizning ilovangizdan foydalanuvchi agar interfaol vazifani sozlovchi kanallarning turli hossalarini testlash va triggerlarni o‘rnatsa, shunda aniq vazifani aniqlaysiz, chunki qachon u zarur bo‘lsa, foydalanuvchilarga, hossalar uchun ishga yaroqsiz qiymatlarni habari beriladi.
Rezerve – keyingi holatda aniq vazifani zahiralash kerak: sizning ilovangiz ko‘pchilik turli vazifalarga ega, ulardan bir xil resurslar to‘plamidan foydalaniladi, vazifalaridan biri o‘z amalini bajarilishini to‘xtovsiz takrorlaydi, siz ishonch bilan bo‘la olasiz, uni bajarilish vaqtida hech qaysi boshqa vazifa bu resurslarni ola olmaydi.
Ma’lum vazifani zahiraga olish shunga olib keladiki ,oxirgisi eksklyuziv holda zarur resurslarni oladi, shu vaqtda boshqalari bu resurslarni ola olmaydi. Masalan: agar ilova ikkita vazifaga ega bo‘lsa, ulardan har biri o‘lchash ketma – ketligini bajara oladi va siz ishonasizki, har bir topshiriq o‘zining ketma – ketligini keyingisi boshlanguncha tugatadi deb, shunda siz aniq zahiralashdan
foydalanib har bir vazifa bajarilishidan oldin uni o‘lchash ketma – ketligidan foydalana olasiz.
Commit – vazifani aniq tayinlash foydali bo‘ladi, agar ilova bir necha o‘lchashlarni yoki generasiyani amalga oshiradi, ishga tushishni takrorlaydi va vazifani to‘xtatadi. Aniq tayinlash shunga olib keladiki, ular shu resurslarni sozlash dasturlangan resurslarni eksklyuziv oladi. Aniq tayinlanishdan ushbu amallar faqat bir marta bajariladi, har bir vazifani ishga tushirmay turib, bu esa ancha vaqtni vazifani ishga tushirishni tejash imkonini beradi. Masalan, agar ilova tanlovlarning cheklangan soni uchun apparatli sinxronlashgan tanlanishni amalga oshiriladi, o‘sha vaqtda ishga tushish zarurligi uchun anchaga qisqarishi mumkin, agar siz bu o‘lchashlar oldidagi vazifani aniq tayinlagansiz. Aniq tayinlanish talab qilinadi, agar tanlovlarni hisoblash amallariga qo‘shimcha zarur bo‘lsa, bunda vazifani to‘xtashidan keyin olingan vazifalar kerak bo‘lsa.
Start – agar ilova o‘qish yoki yozish amallarini siklik amalga oshirsa, bunda aniq ishga tushirish foydali bo‘ladi. Vazifani ishga tushirishda foydalaniladigan resurslar , bu resurslarning ba’zi sozlanishlarini dasturlaydi va berilgan amallarni bajara boshlaydi. Aniq ishga tushirishda bu ishlar bir marta bajariladi, har bir o‘qish yoki yozish amallarini bajarishda emas. Bu jarayon har bir o‘qish yoki yozish amalini bajarishda ancha vaqtni kamaytiradi. Misol uchun ilova ma’lumotlarning bitta nuqtasini yoki o‘shani dasturiy sinxronlashgan hisoblash amalini tanlovini siklik amalga oshiradi. Shunda agar shu sikllar oldidan biz aniq topshiriqni ishga tushirsak, har bir hisoblash amali uchun kerakli, shunda kerak bo‘ladigan vaqt anchaga qisqaradi.
Do'stlaringiz bilan baham: |