【发布时间】:2016-04-18 18:31:36
【问题描述】:
对于我目前正在开发的应用程序,我需要并行启动共享库的实例。
由于我想对并行实例的数量进行细粒度控制(库许可证将并行数量限制为固定数量的线程),我想知道是否有一种简单的方法来创建和维护自己的线程池原生模块?
谢谢!
【问题讨论】:
标签: c++ node.js threadpool native libuv
对于我目前正在开发的应用程序,我需要并行启动共享库的实例。
由于我想对并行实例的数量进行细粒度控制(库许可证将并行数量限制为固定数量的线程),我想知道是否有一种简单的方法来创建和维护自己的线程池原生模块?
谢谢!
【问题讨论】:
标签: c++ node.js threadpool native libuv
基本上我们必须在创建线程池之前设置UV_THREADPOOL_SIZE环境变量。
这可以通过三种方式完成:
将这一行放在你的 .bashrc 文件中会影响该用户下所有打开的节点进程
export UV_THREADPOOL_SIZE=10
在进程打开前设置
UV_THREADPOOL_SIZE=10 node myscript.js
在 javascript 中设置它,在第一行:
process.env.UV_THREADPOOL_SIZE = 10;
【讨论】: