PAST PASTIONE TOM ကိုထိန်းချုပ်ခြင်းသည် PHP scripts များကိုအထူးသဖြင့်အချိန်ကိုက်ခြင်း, PHP သည် "အိပ်စက်ခြင်း" လုပ်ငန်းများ, Than_Nanosleep () နှင့် USEEP () သည် nanosecond နှင့် microsecond ခဲယဉ်းသောကာလအသီးသီးကိုအထောက်အကူပြုရန် "Sleep" လုပ်ငန်းများအကောင်အထည်ဖော်ရန်လုပ်ဆောင်ချက်များကိုထောက်ပံ့ပေးသည်။ အကယ်. သင်သည်တစ်ချိန်တည်းတွင်ဇာတ်ညွှန်းတွင်ဤလုပ်ဆောင်ချက်နှစ်ခု၏အင်္ဂါရပ်များကိုသင်အသုံးပြုလိုပါကပိုမိုတိကျသောနှောင့်နှေးမှုကိုအောင်မြင်ရန်သင်ပေါင်းစပ်အသုံးပြုနိုင်သည်။
ဤဆောင်းပါးသည် အချိန် _nanosleep () နှင့် USLEEP ကို မည်သို့ပေါင်းစပ်ပြီးသက်ဆိုင်ရာအသုံးပြုမှုနှင့်အားသာချက်များကိုမိတ်ဆက်ပေးရန်ဥပမာပြရန်ရိုးရှင်းသောဥပမာကိုအသုံးပြုလိမ့်မည်။
time_nanosleep () သတ်မှတ်ထားသောစက္ကန့်များနှင့် nanoseconds အမှုန်များကိုခွင့်ပြုသည်။ function ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -
bool time_nanosleep(int $seconds, int $nanoseconds)
$ စက္ကန့် - စက္ကန့်ပိုင်းအတွင်းခေတ္တနားရန်။
$ nanoseconds : အမြင့်ဆုံးတန်ဖိုး 999999999 ဖြင့် nanoseconds တွင်ခေတ္တရပ်နားသည်။
USELEEP () ကုဒ်ကွပ်မျက်မှုကို microseconds တွင်ခေတ္တရပ်ဆိုင်းထားရန်ခွင့်ပြုသည်။
void usleep(int $microseconds)
$ microseconds : microseconds (1 စက္ကန့် 1,000 microseconds) အတွက်အချိန်ကိုခေတ္တနားရန်။
လုပ်ဆောင်ချက်နှစ်ခုလုံးကိုကွပ်မျက်မှုကိုခေတ္တရပ်ဆိုင်းရန်အသုံးပြုနိုင်သော်လည်းအမှန်တကယ်အခြေအနေများတွင်၎င်းတို့တွင်သူတို့၏အားသာချက်များနှင့်အားနည်းချက်များရှိသည်။
Time_Nanosleep () သည် အချိန်ပိုမိုမြင့်မားပြီး nooseconds ကိုထောက်ပံ့သည်။
USELEEP () သည်ပိုမိုရိုးရှင်းလွယ်ကူပြီး microsecond နှောင့်နှေးမှုအတွက်သင့်တော်သော်လည်း Nanosecond နှောင့်နှေးမှုကိုမထိန်းချုပ်နိုင်ပါ။
ဤလုပ်ဆောင်ချက်နှစ်ခုကိုအတူတကွအသုံးပြုခြင်းသည် time_nanosleep () ၏မြင့်မားသောတိကျသောတိကျစွာဆက်လက်ထိန်းသိမ်းထားရုံသာမက USleep မှပေးထားသောပြောင်းလွယ်ပြင်လွယ်မှုများကိုပြုလုပ်နိုင်သည်။
1.234566 စက္ကန့်ကြာမှုနှင့် တွဲဖက်. လုပ်ဆောင်ချက်နှစ်ခုကိုမည်သို့အသုံးပြုရမည်ကိုပြသသော PHP script တစ်ခုမှာဤတွင်ဖော်ပြထားသည်။
<?php
// စုစုပေါင်းပစ်မှတ်နှောင့်နှေး:1.234567 စက်ဏန့်
// ပထမခြေလှမ်း:အသုံးပြု time_nanosleep ခေတ္တရပ်ဆိုင်းခြင်း 1 စက်ဏန့် + 0.2 စက်ဏန့်(အခုချက်ချင်း 200,000,000 纳စက်ဏန့်)
$seconds = 1;
$nanoseconds = 200000000;
time_nanosleep($seconds, $nanoseconds);
// အဆင့် 2:အသုံးပြု usleep ခေတ္တရပ်ဆိုင်းခြင်း 34.567 毫စက်ဏန့်(အခုချက်ချင်း 34567 微စက်ဏန့်)
$microseconds = 34567;
usleep($microseconds);
// ရလဒ်ရလဒ်
echo "နှောင့်နှေး,တာဝန်များကိုဆက်လက်လုပ်ဆောင်ရန်ဆက်လက်。\n";
// ဥပမာအသုံးပြုမှု:ပြင်ပ interface ကိုခေါ်ဆိုခြင်း
$response = file_get_contents("https://gitbox.net/api/fake-endpoint");
echo "တုံ့ပြန်မှုဒေတာကိုလက်ခံရရှိခဲ့သည်:$response\n";
Current Control Control ကိုတောင်းဆိုပါ တစ်စက္ကန့်လျှင် N တောင်းဆိုမှုများကိုသင်လုပ်ဆောင်ရန်လိုအပ်သည့်အခါသင့်တောင်းဆိုမှုများကိုတိကျသောနှောင့်နှေးမှုဖြင့်အညီအမျှဖြန့်ဝေနိုင်သည်။
လူ့အပြုအမူကိုတုပ Crawler သို့မဟုတ်အလိုအလျောက်စမ်းသပ်ခြင်းအခြေအနေများတွင်လူ့စစ်ဆင်ရေးများတွင်ကျပန်းနှောင့်နှေးမှုများပြုလုပ်ခြင်းသည်ရှာဖွေတွေ့ရှိခြင်းအန္တရာယ်ကိုလျော့နည်းစေသည်။
Multithreaded သို့မဟုတ်တစ်ပြိုင်နက်တည်းထိန်းချုပ်မှု <br> <br> နှောင့်နှေးနေသည့်လုပ်ဆောင်ချက်သည်သယံဇာတကိုရှာဖွေခြင်းကိုတားဆီးရန် Multi-process အလုပ်များကိုစည်းချက်ညီညီထဟိုမြို့သားများကိုထည့်သွင်းရန်ကူညီနိုင်သည်။
time_nanosleep () အချို့သောစနစ်များအပေါ်မြင့်မားသောတိကျသောနှောင့်နှေးမှုကိုအောင်မြင်ရန်မဖြစ်နိုင်ပါ, ထို့ကြောင့်အမှန်တကယ်တိုင်းတာမှုများပြုလုပ်ရန်အကြံပြုသည်။
အကယ်. ပိုမိုမြင့်မားသောတိကျစွာအချိန်ထိန်းချုပ်ရန်လိုအပ်ပါက PHP ၏ HRTIVE ကို တိကျသောအချိန်ကာလအတွက်အသုံးပြုရန်အကြံပြုသည်။
ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်ပြီးအသုံးပြုသောအခါစနစ်အပေါ်အလွန်အမင်းဖိအားကိုရှောင်ရှားရန်စုစုပေါင်းနှောင့်နှေးအချိန်နှင့်အရင်းအမြစ်သုံးစွဲမှုကိုအာရုံစိုက်ပါ။
time_nanosleep () နှင့် USLEEP () ကိုပေါင်းစပ်ခြင်းဖြင့် PHP ပရိုဂရမ်မာများသည်ဒုတိယသို့မဟုတ်ပိုမိုကောင်းမွန်သောနှောင့်နှေးမှုများကိုရရှိနိုင်ပါသည်။ ဤနည်းလမ်းသည်အထူးသဖြင့်စည်းချက်ထိန်းချုပ်မှုလိုအပ်သည့် application scarios များအတွက်သင့်လျော်သည်။ ဤဆောင်းပါးတွင်ဥပမာများကသင်ဖွံ့ဖြိုးတိုးတက်မှုအတွက်သင့်အတွက်အထောက်အကူပြုလိမ့်မည်ဟုမျှော်လင့်ပါသည်။