— Salom, Amigo! Bugun Bilabo senga nitlar bilan ishlashda eng qiziqarli metodlardan biri — sleep metodi haqida so'zlab beradi. Sleep metodi Thread klassining statik metodi sifatida e'lon qilingan, ya'ni u hech qanday ob'ekt bilan bog'lanmagan. Bu metodning maqsadi dastur "uxlab qolishi" uchun bir oz vaqt ajratish. Mana qanday ishlaydi:
| Kod | Izoh |
|---|---|
|
Dastur ishga tushadi. So'ngra 2 soniya (2 000 millisekund) davomida to'xtaydi. So'ngra tugaydi. |
Sleep metodining yagona parametri — bu vaqt. Vaqt mingdan bir soniyalarda (millisekundalarda) belgilanadi. Nima paytda nitya ushbu metodni chaqirganda, u aytilgan millisekund vaqt davomida uxlaydi.
— Qayerda buni yaxshiroq ishlatish yaxshi?
— Ushbu metod ko'p hollarda ikkilamchi nitlarda ishlatiladi, qachonki biror amalni takror-takror bajarish kerak, lekin juda tez-tez emas. Mana bir misol:
| Kod | Izoh |
|---|---|
|
Dastur abadiy ishlaydi – sikl davom ettirish sharti hech qachon buzilmaydi. Sikl ichida dastur quyidagilarni bajaradi: Ya'ni, har soniyada ikki marta biror amal bajariladi. |
— Voy, bu qiziq ekan endi.
— Xursandman, senga yoqqanidan, mening do'stim Amigo!
— Agar men biror amalni sekundiga 100 marta bajarishni xohlasam, nima qilish kerak?
— Agar amal 100 marta sekundiga bajarilishi kerak bo'lsa, va bir sekundda 1000 millisekund bor bo'lsa, demak amal har 10 millisekundda bajarilishi kerak.
Agar senga amal 2 millisekundni oladi, unda unga 8 millisekundli pauza qo'shish kerak. Birgalikda ular aniq 10 millisekundda bajariladi. Va bir sekundda – aniq 100 marta.
Agar sening amaling deyarli darhol bajarilsa, unda 10 millisekundli pauza (sleep) qo'ygin. Unda sekundiga ham taxminan 100 marta bo'ladi.
— Rahmat, Bilabo.
GO TO FULL VERSION