tsc-watch是否会消耗TSC_NONPOLLING_WATCHER?

时间:2018-07-15 13:46:49

标签: typescript watch

我正在从事微服务集成项目。我同时使用运行8个打字稿服务 tsc-watch --preserveWatchOutput --onSuccess 'node build/index.js'

即使我根本不编写源代码,这些进程也会消耗70%的CPU。我发现正在进行一些更改轮询,并用谷歌搜索将环境变量TSC_NONPOLLING_WATCHER设置为“ 1”将停止轮询。

这是提示的来源: https://medium.com/@julioromano/writing-typescript-on-a-laptop-this-might-improve-your-battery-life-f503dd16f019

但是,它似乎根本没有任何作用。另外,作者提到的是“ tsc -w”而不是tsc-watch。我不太了解tsc -w和tsc-watch之间的区别。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

更新1 无需更改tsconfig.json

我遇到了类似的problem,并将通过正确设置环境变量TSC_NONPOLLING_WATCHER="1"来解决它。

就我而言,我必须通过{p>

.zprofile

您可以通过export TSC_NONPOLLING_WATCHER="1" 在命令外壳中对其进行测试。

替代

如果这样做没有帮助,请尝试将echo $TSC_NONPOLLING_WATCHER文件设置为以下内容:

tsconfig.json

这些选项来自:https://www.typescriptlang.org/docs/handbook/configuring-watch.html,我强烈建议您在进行任何更改之前通读它。

tsc vs tsc-watch

关于"watchOptions": { // Use native file system events for files and directories "watchFile": "useFsEvents", "watchDirectory": "useFsEvents", // Poll files for updates more frequently // when they're updated a lot. "fallbackPolling": "dynamicPriority" } tsc -w之间在github上的项目的区别,我引用:

  • tsc-watch正在使用当前安装的TypeScript编译器。
  • tsc-watch并没有更改编译器,只是添加了新参数,编译是相同的,其他所有参数都是相同的。

因此,与您的情况一样,tsc的所有tsc设置都应该可以正常工作。