資源の読み込みに... 荷物...

投稿メッセージ

についてpostMessage()この関数はスレッドにメッセージを送信するために使用されます.

postMessage ((msg) について

パラメータmsgメッセージを送信します

メッセージ 本当 文字列,数,ボール,オブジェクト,配列,関数,ゼロ値など,システムでサポートされる任意のタイプ

function main() {
    var t1 = threading.Thread(function() {
        for (var i = 0; i < 10; i++) {
            Log("thread1 postMessage():", i)
            threading.mainThread().postMessage(i)
            Sleep(500)
        }        
    })
    for (var i = 0; i < 10; i++) {
        var event = threading.mainThread().eventLoop()
        Log("main event:", event)
        Sleep(500)
    }
    t1.join()
}

同期スレッドでメッセージを送信し,使用するeventLoop()メッセージの通知を受け取る

function main() {
    threading.mainThread().postMessage(function(msg) {
        Log("func from mainThread, msg:", msg)
    })
    
    threading.Thread(function() {
        var func = threading.mainThread().peekMessage()
        func("in " + threading.currentThread().name())
    }).join()
}

函数を送信もサポートします

実行関数に呼び出します.postMessage()メッセージ イベントも生成されます.eventLoop()メッセージ通知を受信する機能

{@fun/Threads/Thread/peekMessage peekMessage}, {@fun/Threads/Thread/join join}, {@fun/Threads/Thread/terminate terminate}, {@fun/Threads/Thread/getData getData}, {@fun/Threads/Thread/setData set}, {@fun/Threads/Thread/id id}, {@fun/Threads/Threads/Thread/name name join}, {@fun/Threads/Thread/terminate terminate}, {@fun/Threads/Thread/getData getData}, {@fun/Threads/Thread/setData setData}, {@fun/Threads/Threads/id id}, {@fun/Threads/Threads/Threads/name name}, {@fun/Threads/Thread/eventLoop eventLoop}

peek メッセージ 加入する