node 怎么实现并行化执行传输不可序列化对象?

13次阅读

共计 318 个字符,预计需要花费 1 分钟才能阅读完成。

现在的需求是存在一个类内的方法,原来是串行的,现在需要改并行。现在我需要将一个对象 obj,或者对象的方法 obj.run 传入子线程,然后回调执行。

但是我尝试了几种方式,似乎是没办法将复杂的对象进行传递?以至于常规的回调函数的方式没办法在 node 的并行化中实现。

  1. worker_thread
new Worker(moduleThreadFile, 
workerData:{'obj':obj}) //ERROR

会报告 Cannot set property code of which has only a getter.

  1. workerpool
pool=workerpool.pool()
pool.exec(obj,[])

实际上传入的 obj 在子线程中是 undefined

正文完
 0