Sto scrivendo un addon della GUI per Node.js (wxWidgets) e voglio eseguire il ciclo della GUI in una propria discussione poiché non penso che sarebbe una buona idea unire con il thread principale del nodo e il ciclo degli eventi.Node.js C++ Addon: Threading
Tuttavia, non sono sicuro di come creare un nuovo thread. L'ho fatto funzionare con uv_queue_work()
. Ma non creerà un thread esclusivo per la GUI ma userà il pool di thread del Node. E questa potrebbe essere una cattiva idea poiché il lavoratore rimarrà durante l'intero runtime. (Non ne sono sicuro)
Potrei anche usare lo wxThread
di wxWidgets, funziona anche. E ho trovato una nuova funzione uv_thread_create
in libuv git master. Non ho idea di come usarlo in quanto non esiste una descrizione e inoltre non è ancora disponibile nella build stabile di Node.js.
La mia domanda: qual è il modo "standard" per creare un Addon Node.js multi-thread, se presente? Ho esaminato altri progetti, ma sono riuscito a trovare solo thread di lavoro a esecuzione ridotta usando libuv.
Non so C++ ma sono consapevole del fatto che il progetto 'nodo fibers' crea discussioni, forse sarebbe utile guardare lì (nel caso in cui hai perso esso): https: // github.com/laverdet/node-fibers/blob/master/src/fibers.cc – alessioalex
Puoi anche dare un'occhiata a https://github.com/xk/node-threads-a-gogo/ e vedere come sono implementati esso. –