建立600+和CPU的使用 - 页 8

 
xaphod:

建628。没有传入虱子。 >500次/秒。妙不可言!

请用build 645(最后一个正式版本)检查,如果没有变化,请 Metaquotes的服务台报告。谢谢你。
 
xaphod:

建628。没有传入虱子。 >500次/秒。妙不可言!


那么建立509没有这样的事情发生?625的情况如何?
 
mikeyap9:
修复了,是由于我的代码造成的。 我添加了没有正确初始化的变量,所以我的计算无休止地循环进行。


我说得太早了,这不是问题。 实际上是文件读取的争论,我有28个机器人在读取同一个设置文件。 我所做的就是切换到FILE_SHARE_READ 而不是FILE_READ。 现在已经恢复正常了。
 

我在单个终端上仍然有很高的CPU使用率。 使用745和765版本。 我在终端上测试了没有加载图表,禁用新闻,禁用警报。 仍然有40-60%的cpu使用率。双核3.1Ghz vps win2008, R2 64位。1.5GB内存,400-800MB可用内存。一些加载了图表的终端显示1-3%的cpu使用率。 为什么在没有任何运行的情况下,随机终端的使用率也这么高?

编辑:这是进程管理器的进程属性页面的截图。

我试图杀死这个高使用率的线程,当我这样做的时候,另一个使用相同cpu使用率的线程取代了它。

编辑:然后我尝试 "暂停 "这个线程(不是杀死它)。

这降低了cpu,但我需要看看它是否以任何其他方式影响终端。 以前的帖子表明,报价已经停止进入终端(当被杀死时)。 因此,当今天晚些时候市场恢复时,我将不得不看。我现在试着恢复它,但线程只是跳回高cpu使用率。 没有打开的图表,市场观察没有符号(隐藏所有)。 加上市场关闭,所以没有传入的ticks。

编辑:市场已经重新开放。 当我暂停线程时,终端会出现5-10分钟的正常工作,然后会突然冻结(没有反应),然后你必须取消暂停(恢复)线程,让程序工作,或者重新启动程序。

我确实注意到,在重启后的同一时间,我启动的另一个终端也有很高的内存使用率,但现在已经没有了(回落到0.2-1.5%的cpu使用率)。 而且这个终端打开了带有EA和指标的图表。 这里似乎没有一个合理的原因来解释高cpu使用率,除非我错过了什么。

 

我刚刚在一个全新的测试服务器上进行了测试,这次使用的是windows 2012 64位,4个处理器和2GB内存。 我启动的终端的cpu使用率很低(在0.1和1%之间),即使加载了几个图表和指标。

然后我启动了一个新安装的终端,启动后大约2分钟,它的使用率达到25%(没有打开图表)。 其他现有的终端使用率较低。

然后,其他的终端表现得很好,没有发生任何事件。 当它们被重新启动时,这些终端马上就变成了使用高cpu使用率。 嗯....

我认为这是mt4的一些bug,使一个线程使用这么多cpu。 但为什么呢?

-------

edit: 通过解除对mql4.codebase.en.dat文件的封锁,cpu使用率恢复到0.2-3%.它不再使每个终端的处理器达到最大值,而且文件写入正常。

mql4.codebase.en.dat文件位于这里:Users/[user]/AppData/Roaming/MetaQuotes/Terminal/Community

以前,只读权限被分配给某些mt4文件以减少臃肿的软件。