В процессе загрузки ресурсов... загрузка...

событиеLoop

ВeventLoop()функция используется для прослушивания событий, полученных нитью.

ВeventLoop()функция возвращает информацию о событиях, полученную текущей нитью.Информационная структура событий.

объект, нулевое значение

СобытиеLoop() EventLoop ((Timeout))

Параметр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()
}

Используйте три потока одновременно и выводите полученную информацию о событии.

Механизм обработки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 set}, {@fun/Threads/Thread/id id}, {@fun/Threads/Threads/Thread/name name}, {@fun/Threads/name name}

Имя Закрыть