کےeventLoop()
تقریب موضوع کی طرف سے موصول ہونے والے واقعات کے لئے سننے کے لئے استعمال کیا جاتا ہے.
کےeventLoop()
تقریب موجودہ موضوع کی طرف سے موصول ہونے والے واقعہ کی معلومات واپس کرتا ہے.واقعہ کی معلومات کی ساخت.
آبجیکٹ، صفر قدر
ایونٹ لوپ ((() ایونٹ لوپ (ٹائم آؤٹ)
پیرامیٹرtimeout
ملی سیکنڈ میں ٹائم آؤٹ کی ترتیب ہے. اگر پیرامیٹرtimeout
0 پر مقرر کیا گیا ہے تو ، یہ واپسی سے پہلے کسی ایونٹ کے ہونے کا انتظار کرے گا۔ اگر یہ 0 سے زیادہ ہے تو ، یہ ایونٹ کا انتظار کرنے کا وقت طے کرے گا۔ اگر یہ 0 سے کم ہے تو ، یہ فوری طور پر تازہ ترین واقعہ واپس کرے گا۔
ٹائم آؤٹ غلط نمبر
function main() {
var t1 = threading.Thread(function() {
while (true) {
var eventMsg = threading.currentThread().eventLoop() // Blocking wait
// 2024-11-14 10:14:18 thread1 eventMsg: {"Seq":1,"Event":"thread","ThreadId":0,"Index":1,"Queue":0,"Nano":1731550458699947000}
Log(_D(), "thread1 eventMsg:", eventMsg)
}
})
var t2 = threading.Thread(function() {
while (true) {
var eventMsg = threading.currentThread().eventLoop(-1) // Return immediately
Log(_D(), "thread2 eventMsg:", eventMsg)
Sleep(5000)
}
})
var t3 = threading.Thread(function() {
while (true) {
var eventMsg = threading.currentThread().eventLoop(3000) // Set a 3 second timeout
Log(_D(), "thread3 eventMsg:", eventMsg)
}
})
t1.postMessage("Hello ", t1.name())
t2.postMessage("Hello ", t2.name())
t3.postMessage("Hello ", t3.name())
t1.join()
t2.join()
t3.join()
}
تین تھریڈز کو بیک وقت چلائیں اور موصولہ واقعہ کی معلومات کو آؤٹ پٹ کریں۔ اگر ٹائم آؤٹ ہوتا ہے یا فنکشن فوری طور پر واپس آجاتا ہے تو ، آؤٹ پٹ ویلیو null ہے۔
پروسیسنگ میکانزمeventLoop()
تقریب عالمی تقریب کے طور پر ایک ہی ہےEventLoop()
.
{@fun/Threads/Thread/peekMessage peekMessage}، {@fun/Threads/Thread/postMessage postMessage}، {@fun/Threads/Thread/join join}، {@fun/Threads/Thread/terminate terminate}، {@fun/Threads/Thread/getData getData}، {@fun/Threads/Threads/setData setData}، {@fun/Threads/Thread/id id}، {@fun/Threads/Threads/Thread/name name}، {@fun/Threads/name name}، {@fun/Threads/Thread/name name name}،
نام تھریڈلاک