ဖြေရှင်းချက်: setInterval သည်ပုံမှန်အားဖြင့် browser ၏နောက်ခံတွင်မ run နိုင်ပါ။
ကိုးကားစရာ
WorkerWeb Worker ဆိုတာဘာလဲ
"Web Worker" သည် web အကြောင်းအရာအတွက်နောက်ခံအကြောင်းအရာတစ်ခုဖြင့် scripts ကို run ရန်ရိုးရှင်းသောနည်းလမ်းတစ်ခုဖြစ်သည်။ Threads သည် user interface ကိုနှောင့်ယှက်ခြင်းမရှိဘဲအလုပ်များကိုလုပ်ဆောင်နိုင်သည်။ ထို့အပြင်သူတို့သည် XMLHttpRequest ကို အသုံးပြု၍ I / O လုပ်ဆောင်နိုင်သည်။ ဖန်တီးပြီးသည်နှင့်တစ်ပြိုင်မှအလုပ်သမားတစ်ယောက်သည်ကုဒ်မှသတ်မှတ်ထားသောအဖြစ်အပျက်အကိုင် (သို့) အပြန်အလှန်အားဖြင့်စာကိုပို့ခြင်းအားဖြင့်၎င်းကိုဖန်တီးထားသော JavaScript ကုဒ်သို့စာတိုပေးပို့နိုင်သည်။
ညွှန်ကြားချက်များ
အောက်ဖော်ပြပါနမူနာကုဒ်တွင်ကျွန်ုပ်တို့သည်အရိုးရှင်းဆုံး timer ကိုအကောင်အထည်ဖော်ပြီးမီလီစက္ကန့် ၁၀၀ တိုင်းကိုပြုလုပ်နိုင်သည်။
var timmer = new Worker(
URL.createObjectURL(
new Blob(
[
"onmessage=function(event){setInterval(function(){postMessage(1);},100)}",
],
{ type: "application/javascript" }
)
)
);
timmer.onmessage = function (event) {
console.log("get message");
};
timmer.postMessage("start");
စံအသုံးပြုမှု
အပေါ်ကဥပမာမှာ createObjectURL ကိုအသုံးပြုပြီးလိပ်စာတစ်ခုကိုဖန်တီးခဲ့တယ်။ ကျွန်တော်တို့လုပ်ဖို့လိုအပ်တဲ့ကုဒ်ကတော်တော်လေးရိုးရှင်းတဲ့အတွက်ဒီနည်းလမ်းကပိုပြီးကျစ်လစ်တယ်။ ကျွန်ုပ်တို့လုပ်ဆောင်ရန်လိုအပ်သည့်လုပ်ငန်းတာဝန်ရှိကုဒ်သည်ပိုမိုရှုပ်ထွေးပါကသီးခြားစီ JS ဖိုင်အဖြစ်သီးခြားစီရေးသားနိုင်သည်။ အသေးစိတ်အတွက် ကျေးဇူးပြု၍ အောက်ပါကုဒ်ကိုဖတ်ပါ။ အသေးစိတ်နိဒါန်းတွေရှိတယ်၊ သင်ဆောင်းပါးရဲ့ထိပ်ပိုင်းမှာရှိတဲ့ရည်ညွှန်းစာရွက်စာတမ်းတွေကိုရည်ညွှန်းနိုင်တယ်။
var timmer = new Worker('worker.js');