thread-loader
thread-loader
是一种在 worker
池中运行以下 loader
的工具。
开始使用
通过 npm、yarn 或 pnpm 安装:
1 | npm install --save-dev thread-loader |
或者
1 | yarn add -D thread-loader |
或者
1 | pnpm add -D thread-loader |
将其放在其他 loader
的前面,以下 loader
将在 worker
池中运行。
在 worker
池中运行的 loader
有一些限制。例如:
loader
不能发射文件。loader
不能使用自定义loader API
(即插件)。loader
不能访问webpack
配置项。
每个 worker
是一个单独的 node.js
进程,启动一个 worker
大约需要 600ms 的时间。此外,进程间通信也存在一定的开销。
因此,仅将此 loader
用于计算密集型操作!
示例
webpack.config.js
1 | module.exports = { |
带有选项
1 | use: [ |
预热
为了防止在启动 worker
时出现高延迟,可以预热 worker
池。
这将启动池中的最大 worker
数量,并将指定的模块加载到 node.js
模块缓存中。
1 | const threadLoader = require('thread-loader'); |
翻译: thread-loader