LepostMessage()
fonction est utilisée pour envoyer un message à un thread.
PostMessage (message)
Le paramètremsg
est le message à envoyer.
Message à envoyer vrai Tout type pris en charge par le système, tel que chaîne, nombre, bool, objet, tableau, fonction, valeur nulle, etc.
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()
}
Envoyer des messages dans des threads simultanés et utilisereventLoop()
pour recevoir des notifications de messages.
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()
}
Il prend en charge l'envoi d'une fonction.
Lorsque la fonction d'exécution d'un thread appelle lepostMessage()
Nous pouvons utiliser la fonction pour envoyer un signal ou des données, un événement de message est également généré.eventLoop()
fonction de réception des notifications de messages.
{@fun/Threads/Thread/peekMessage peekMessage}, {@fun/Threads/Thread/join join}, {@fun/Threads/Thread/terminate terminate}, {@fun/Threads/Thread/getData getData}, {@fun/Threads/Thread/setData setData}, {@fun/Threads/Thread/id id}, {@fun/Threads/Threads/Thread/name name}, {@fun/Threads/Thread/eventLoop eventLoop}, {@fun/Threads/Threads/eventLoop eventLoop}
Un coup d'œilMessage rejoindre