PHP တွင်ဆံပင်ကောက်ကောက်ကိုအသုံးပြုသောအခါ curl_multi_ * function သည် curl_multi_ * function ကိုတစ်ပြိုင်နက်တည်းကွပ်မျက်ရန်အသုံးပြုလေ့ရှိသည်။ ထိရောက်သောကုဒ်ကွပ်မျက်မှုကိုသေချာစေရန်အထူးသဖြင့် curl_mamulti_close function ကိုခေါ်သည့်အခါ, ဤဆောင်းပါးသည် curl_multi_close ကို မည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးပြီးအရင်းအမြစ်များကိုသေချာစွာသန့်ရှင်းရေးလုပ်ရန်နှင့်မှတ်ဉာဏ်ယိုစိမ့်မှုနှင့်ဖိုင်လက်ကိုင်ယိုစိမ့်မှုများကိုရှောင်ရှားရန်သေချာစွာမိတ်ဆက်ပေးလိမ့်မည်။
PHP တွင် curl_multi_ * function ကိုအပြိုင်အပြိုင်တွင် curl session များကိုစီမံရန်အသုံးပြုသည်။ curl_mamulti_close သည် Multipreaded curl session များနှင့်ဆက်စပ်သောအရင်းအမြစ်များကိုပိတ်ရန်အသုံးပြုသောအလွန်အရေးကြီးသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ၎င်း၏အခြေခံလုပ်ဆောင်ချက်မှာအရင်းအမြစ်ယိုစိမ့်မှုများကိုရှောင်ရှားရန် Curl_multi_init ဖြင့်ဖန်တီးထားသော curl_multi_init ဖြင့်ဖန်တီးထားသော curl session အရင်းအမြစ်အားလုံးကိုဖျက်ဆီးရန်ဖြစ်သည်။
မျိုးစုံဆံပင်ကောက်ကောက် sessions များကိုစတင်ပါ
ပထမ ဦး စွာသင် curl_init နှင့်အတူ curl sessions မျိုးစုံ sessions ကိုအစပျိုးရန်နှင့် curl_mamulti_handle မှသူတို့ကိုထည့်သွင်းရန်လိုအပ်သည်။ curl_multi_init function သည် subsessions အားလုံးကိုစီမံမည့်ဆံပင်ပေါင်းစုံအမျိုးမျိုးကိုဖန်တီးရန်အသုံးပြုသည်။
$multi_handle = curl_multi_init();
$ch1 = curl_init("https://gitbox.net/api/resource1");
$ch2 = curl_init("https://gitbox.net/api/resource2");
curl_multi_add_handle($multi_handle, $ch1);
curl_multi_add_handle($multi_handle, $ch2);
မျိုးစုံတောင်းဆိုမှုများလုပ်ဆောင်ပါ
ဤတောင်းဆိုမှုများကိုအပြိုင်တွင်ဤတောင်းဆိုမှုများကို execute လုပ်ရန် curl_multi_exec ကို သုံးပါ။ တောင်းဆိုမှုများအားလုံးပြီးဆုံးသည်အထိ function ကိုကွပ်မျက်ခံရလိမ့်မည်။
do {
$mrc = curl_multi_exec($multi_handle, $active);
} while ($active);
မျိုးစုံလက်ကိုင်ပိတ်ပါ
ကောက်ကောက်တောင်းဆိုမှုများပြီးဆုံးသွားသောအခါ, သင်ကလက်ကိုင်မျိုးစုံကိုပိတ်ရန်နှင့်ဆက်စပ်သောအရင်းအမြစ်များကိုဖြန့်ချိရန် curl_multi_close ဟုခေါ်ရန်လိုအပ်သည်။ မှတ်ဉာဏ်ယိုစိမ့်မှုကိုကာကွယ်ရန်လက်ကိုင်တစ်ခုစီကိုပိတ်ထားပါ။
curl_multi_remove_handle($multi_handle, $ch1);
curl_multi_remove_handle($multi_handle, $ch2);
curl_multi_close($multi_handle);
Curl_multi_Close Calling သည်အလွန်အရေးကြီးသည်, curl_multi_close ကို မခေါ်ပါက၎င်းသည်သယံဇာတအရင်းအမြစ်ယိုစိမ့်မှုကြောင့်အထူးသဖြင့်ရေရှည်ဇာတ်ညွှန်းရေးခြင်းများသို့မဟုတ် 0 န်ဆောင်မှုများဖြင့်စနစ်အရင်းအမြစ်များကိုစဉ်ဆက်မပြတ်သုံးစွဲလိမ့်မည်။
တစ်ခုချင်းစီကိုတစ် ဦး ချင်းစီကောက်ကောက်လက်ကိုင်ပိတ်ပါ
လက်ကိုင်မျိုးစုံကိုမပိတ်မီ curl_multi_remove_handle မှတဆင့်ကိုယ်ပွားသောလက်ကိုင်များအားလုံးကိုသင် ဦး စွာဖယ်ရှားပစ်ပြီး curl_mamulti_close ဟုခေါ်ပါ။
curl_multi_remove_handle($multi_handle, $ch1);
curl_multi_remove_handle($multi_handle, $ch2);
curl_close($ch1);
curl_close($ch2);
တက်ကြွစွာအစည်းအဝေးများမရှိကြောင်းသေချာပါစေ
curl_multi_close ကို မခေါ်မီတောင်းဆိုမှုများအားလုံးကိုပြီးစီးရန်သေချာစေပြီး curl_mamulti_exec ၏ပြန်လာအခြေအနေကို curlm_ok ဖြစ်သင့်သည်။ ၎င်းသည်တောင်းဆိုမှုကိုမပြီးဆုံးပါက session ကိုပိတ်ရန်ကြိုးစားခြင်းကိုရှောင်ရှားသည်။
do {
$mrc = curl_multi_exec($multi_handle, $active);
} while ($active);
အရင်းအမြစ်များကိုအရင်းအမြစ်များစစ်ဆေးပါ
အထူးသဖြင့်ကွင်းပြင်တွင်သို့မဟုတ်တစ်ပြိုင်နက်တည်းတောင်းဆိုမှုများစွာကိုများသောအားဖြင့်မှန်ကန်သောအရင်းအမြစ်များကိုမှန်ကန်စွာထုတ်ပြန်ခြင်းရှိမရှိပုံမှန်စစ်ဆေးရန်အရေးကြီးသည်။ အကယ်. သင်သည်အလွန်အကျွံမှတ်ဉာဏ်သုံးစွဲမှုကိုသင်ကြုံတွေ့ရပါက memory_get_get_usage () ကဲ့သို့သောလုပ်ဆောင်မှုများကိုသုံးနိုင်သည်။
Curl_multi_Close ၏မှန်ကန်သောအသုံးပြုမှုသည် PHP application များများကိုထိရောက်စွာနှင့်မှတ်ဉာဏ်ကင်းစွာလည်ပတ်နိုင်ရန်အရေးကြီးသောခြေလှမ်းတစ်ခုဖြစ်သည်။ ဆံပင်ကောက်ကောက်များနှင့်ဖျက်ဆီးခြင်းကိုကျိုးကြောင်းဆီလျော်စွာစီမံခြင်းအားဖြင့်အရင်းအမြစ်ယိုစိမ့်မှုပြ problems နာများကိုထိရောက်စွာရှောင်ရှားနိုင်သည်။ အထူးသဖြင့်တစ်ပြိုင်တည်းတောင်းဆိုမှုများစွာကိုကိုင်တွယ်သည့်အခါလက်ကိုင်မျိုးစုံကိုမှန်ကန်စွာပိတ်ခြင်းသည်စနစ်တည်ငြိမ်မှုနှင့်စွမ်းဆောင်ရည်ကိုသိသိသာသာတိုးတက်စေနိုင်သည်။