【问题标题】:grunt watch using lots of cpu on Ubuntu 12.04在 Ubuntu 12.04 上使用大量 cpu 的 grunt watch
【发布时间】:2012-10-08 02:22:22
【问题描述】:

我正在使用 grunt 在一个 towerjs 项目中查看我的咖啡脚本文件,并在它们更改时重新编译它们。这个配置是由 towerjs 生成的,看起来相当理智。问题是,一旦我开始这个过程,我会看到它与一个 cpu 核心挂钩(实际上,只有一个超线程)。如果我删除了很多被监视的路径,我可以将它降低到 CPU 的 25% 左右,但这仍然非常糟糕。

我发现了一些与 Node 的 fs API 甚至 fs.watch in particular 的已知问题和跨平台不一致的引用。尝试过grunt-simple-watch,但效果并不好。

我可以设置 Guard,但让它正常工作可能会很麻烦,而且功能上的 grunt 似乎也很好 - 我很好奇如果其他人有任何其他建议。

【问题讨论】:

  • 尝试新的监视任务:npm install grunt-contrib-watch 并将grunt.loadNpmTasks('grunt-contrib-watch'); 添加到您的 gruntfile。 Grunt v0.3 监视任务遍历和统计文件,这些文件具有大量文件可能会变慢,但对于系统兼容性是必要的。新的只有在节点内正常工作时才会使用 inotify。
  • @KyleRobinsonYoung 成功了,谢谢!作为答案提交?
  • 当然。如果您遇到任何问题,请随时在 github 上提交问题。 :)

标签: node.js coffeescript gruntjs towerjs


【解决方案1】:

尝试新的监视任务:npm install grunt-contrib-watch 并将grunt.loadNpmTasks('grunt-contrib-watch'); 添加到您的 gruntfile。 Grunt v0.3 监视任务遍历和统计文件,这些文件具有大量文件可能会变慢,但对于系统兼容性是必要的。新的只有在节点内正常工作时才会使用 inotify。

【讨论】:

  • 在 Windows 8 上遇到了同样的 cpu 问题。我正在使用 grunt-contrib-watch
  • 确保您的模式没有耗尽匹配的 1000 个文件。 cpu 使用率高的第一原因。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多