Aar*_*ton 10 javascript windows windows-7 node.js electron
我在单核Windows 7机器上运行电子应用程序.似乎每当我使用fs库执行几乎任何文件I/O时,CPU对电子过程的峰值达到~100%,执行文件I/O可能需要一分钟.
一个特别慢的函数是fs.readFileAsync().我正在阅读的文件很小,但似乎需要很长时间才能完成.
我还在Windows 7上使用双核,Windows 8.1,Windows 10和Ubuntu 15.10运行这个确切的代码,并且这些操作系统都没有遇到这个问题,它似乎只是单核的Windows 7机器.(所以我几乎肯定是编写的代码没有问题).
有谁知道为什么会发生这种情况?有没有解决这个问题的方法?核心数量会影响电子应用的性能,这似乎很奇怪.同样,这只是Windows 7,因此单核Windows 8.1或Windows 10计算机不会出现此行为.
Electron 在主进程中不能很好地处理这样的任务。Electron 也不是多线程的。
即使您运行的是单核,我也建议使用节点的“child_process”在电子主进程之外运行文件读/写(或任何与此相关的繁重任务)。这应该可以解决应用程序中任何奇怪的问题或口吃,并且通常会加快速度。
另请记住,Electron 是基于 chrome 的,而 Node 是基于 v8 的,而 v8 是 chrome 的核心。这些因素结合在一起使得电子本质上非常资源密集,而性能通常是电子的缺点。明显的好处是能够快速创建跨平台应用程序。总体而言,1 核机器可能不太适合运行 1 个电子应用程序。我们还没有 1 核心机器做什么?10年?
归档时间: |
|
查看次数: |
1037 次 |
最近记录: |