2014-05-18 3 views
0

J'essaie de comprendre comment un morceau de code Javascript (dans Node.js) peut être forcé de terminer son exécution. Quelque chose comme ceci pseudocode:Terminer un thread

var thread = runAsynchronouslyInThread(function() { 
    while(1) {}; 
}); 

setTimeout(function() { 
    thread.terminate(); 
}, 1000); 

J'ai essayé threads_a_gogo et webworker-threads sur cette base, mais pas de chance, destroy et terminate méthodes n'interrompent pas ce qui est déjà en cours d'exécution. Y a-t-il un moyen d'y parvenir en Javascript?

Je sais que cette tâche n'est pas vraiment courante dans la programmation de node.js, mais c'est absolument obligatoire dans les besoins de mon projet.

Répondre

0

vous pouvez essayer process.exit() ou process.kill()

un coup d'oeil here et here pour leur API.

Je suppose un autre thread que vous voulez dire un child_process. Le noeud est toujours un fil unique. Donc, vous appelez process.exit() vous allez tuer tout le processus si ce n'est pas un appel sur un enfant.

+0

Non, je parle des threads, pas des processus. Ces threads qui sont créés par 'threads_a_gogo' par exemple. – artch

+0

wow. ce nouveau truc pour moi. J'aurais dû lire plus attentivement ... Un tout nouveau monde m'attend: D –

Questions connexes