[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 5. - 页 381

 

同步性也是一个相对的概念。什么与什么同步?原子访问的同步化?那么谁来建造这个队列呢?Junko,也许你的库可以正常构建队列,如果代码来自MSDN,因为那里的一切都做得很正确。而你只是复制了它,却不了解它的作用--就像猴子的眼镜。或者你只是像往常一样编造它。因为你不明白。你把原子访问的同步化与排队混淆了。

 
Sepulca:
买了很多处理器内核。而现在要排队的是哪一个)))))))))

不,这也适用于单核处理器,多任务处理是操作系统的一个功能。
 
Chiripaha:

我通过增加PauseBar检查,在1分钟和5分钟的条形图上只得到了这些棍子。但我不明白如何正确绕过它们。我明白需要写些什么,可能(但不明显),如果值

в

前一个条形图的值 - 类似这样。

但当我尝试这样做时,我的整个指标都 "动 "了起来--因为我不明白其中的逻辑,也不明白应该把它放在哪里,在什么条件下。


这个变体在测试器中工作得很充分。
我是这样解决的。

        if(FirstChanel) 
        { 
          if(Up[i-2]==0 && Down[i-2]==0)
          {
            Up[i-1]   = high;   
            Down[i-1] = low; 
          } 
          else
          {
            Up[i-1]   = Up[i-2];   
            Down[i-1] = Down[i-2]; 
          }  
        }

而凡是有[i]的地方都向后移了1小节

还有这里。

   Comment("DrawChannel =",DrawChannel,"\n",
           "limit =",limit); // изначально значение было равно 1
  
   limit = Bars-IndicatorCounted()-1; 
   if(limit >= 1)                    limit = Bars-1; // и это условие не выполнялось, поставил >= и начало считать
附加的文件:
 
日子过得不错。我在论坛上徘徊,但没有找到明确的答案,我的专家顾问有可能同时处理几个货币对吗?我认为一些销售EA的网站在其描述中具有这种可能性,但我想确认一下。我已经开始接触一些外汇对,我不知道如何开始交易。
 
Trendy:

我在论坛上闲逛,但没有找到明确的答案,一个EA是否有可能同时处理几个货币对?

我想一些销售EA的网站在其描述中会有这种可能性,但我想确定一下。

这是有可能的。顾问只受限于你的经纪公司的符号数量。

如果你没有找到答案,因为你的问题本质上是愚蠢的。

如果你可以,请给我们发送一个关于如何做的链接

https://www.mql5.com/ru/code
 
Integer:


1.你一定是在理解上有困难。我知道你在说什么。

2.谢谢,但我并没有要求提供建议。特别是由于我们正在谈论的是不再在同一个线程中的同步化。

那么同步化的科学是什么呢?什么科学?你自己的科学?有一天你会明白,但这并不复杂。编程语言和算法并不是由傻瓜发明和创造的。但由于某种原因,它们被提供了同步和排队的手段。

4.非常错误。如果正确....,如果有同步性。但在你刚才引用的那段代码中,没有同步性,只有原子访问。

3.根据系统编程的科学。阅读里希特。他将给你带来关于排队的启迪。

4.什么是同步化?它是对一种资源的原子式访问。我的代码提供了它。该队列是由系统建立的。各个模块的执行时间是成比例的。执行的顺序并不重要。一切都是由系统完成的。这不是傻子的发明。试着用一个具体的例子来证明相反的说法。分析日志。你会看到,一切都在正确地执行,没有你的特殊队列。

顺便说一下,MQL4作为一种语言,有一个原子访问的函数。在C++中没有这些东西。你必须自己编写它们,作为WinAPI-函数的包装器。最好是在一个类中实现它。

整数:

再一次,为了以防万一,对于那些在潜艇上的坦克里还戴着头盔的人。这里只显示了原子性的访问。这里的功能顺序将随风而动。这段代码没有规定函数的统一执行。这就是为什么不能保证一项功能不会在货架上停留很长时间的原因。仅仅因为处理器的频率很高而依赖编程中的可服务性是荒谬的,即使处理器的频率很高。

再一次为那些不在坦克里的人。系统提供执行顺序。什么是统一执行?你如何提供执行时间 和数量未知的线程的统一执行?为什么要费力不讨好呢?他们已经为你想好了,并且已经做了。你可以使用同步对象。
当然,我不排除在某些情况下你需要一个特殊的线程队列来执行线程。这是一件非常棘手的事情 :-))你应该避免这样的代码。因为这里存在着一个悖论。为什么要在几个线程中执行一个任务,让它们都变成一个?你应该使用单线程执行。那么你就不需要同步了。

还有一种情况,你需要一个队列。但不是线程的执行队列,而是处理从线程收到的数据(线程的结果)的顺序。这是队列中最频繁的任务。

整数:

同步性也是一个相对的概念。什么与什么同步?原子访问的同步化?那么谁来建造这个队列呢?Junko,也许你的库队列是正常建立的,如果代码取自MSDN,因为那里一切都做得很正确。而你只是复制了它,却不了解它的作用--就像猴子的眼镜。或者你只是像往常一样编造它。因为你不明白。你混淆了提供原子访问和排队的同步化。

再次,对于那些...:-))

同步是提供对资源的原子式访问。该队列是由系统建立的。执行是有保证的,订单是没有的。在MSDN中,代码可能是正确的,但很笨拙。编写你自己的类以方便同步。我按照安德烈-波斯特尼科夫的课的原则来写我的课。他亲切地告诉我如何正确地进行同步。的确,这不是一个阶层。我为每一个同步对象得到了一个类,为所有的东西又得到了一个锁类,为等待函数得到了一个命名空间。
实际上,我已经回答了上面的所有问题。

 

顺子,你没救了。如果你很难想,就不要想,完全吐槽,这不是你的事......

如果有些东西是未经证实的,未经证明的,你就不会为它争论了。问题是你,瓦迪姆,没有能力进行建设性的对话。至少你确认同步只是为了原子访问,而不是为了排队。瓦迪姆,你现在是在和自己争论,而没有意识到这一点。

 
Integer:

顺子,你没救了。如果你很难想,就不要想,完全吐槽,这不是你的事......

如果有些东西是未经证实的,未经证明的,你就不会为它争论了。问题是你,瓦迪姆,没有能力进行建设性的对话。至少你确认同步只是为了原子访问,而不是为了排队。

我怎样才能...我不是一个程序员,像某些人一样 :-))
 
Zhunko:

同步是提供对资源的原子式访问。
该队列是由系统构建的。


热烈的掌声欢迎!关于第378页的代码问题。即使终端调节了队列顺序,它也不能知道在哪种情况下函数被执行,在哪种情况下被拒绝。
 
另外,关于制度的监管。如果创建了一个以上的流,是的,系统会调节。但如果有人站在这些流的一边,你必须自己考虑一切,不会有来自系统的奇迹。