MQL中的异步和多线程编程 - 页 27 1...202122232425262728293031323334...40 新评论 [删除] 2019.07.28 10:33 #261 Roman: 我开始重读这个主题,伊戈尔已经写过这个问题了。 这就是我想说的,Yuri,我们必须分配内存并注册线程。 伊戈尔说你需要分配和注册,而你说你不需要做任何事情。 这就是我头晕的原因。其结果是陷入了僵局。 伊戈尔在大学里作为专家学习,他应该比我们这些自学成才的研究员了解更多。 从一开始,我就倾向于同一个想法--内存必须被分配和初始化。 初始化和内存分配 是正确编码的关键,因为它不能流动,也不能是垃圾。 所以我的问题是Igor,请解释一下在C++中如何做到这一点? 不是用语言,用例子,我什么都不懂 )) 伙计,你不能在专业人员上多线程,没有冒犯的意思。但是,如果你有铁一般的心情,请继续阅读并弄清楚。 https://en.cppreference.com/w/cpp/thread https://en.cppreference.com/w/cpp/atomic 如果你需要一个例子,见下文。 https://en.cppreference.com/w/cpp/thread/thread/join https://en.cppreference.com/w/cpp/thread/async 同样,这是一个棘手的问题,很容易出现问题(例如,从一个比共享数据更晚销毁的产卵线程中解钩,在没有适当同步的情况下的编译器优化,还有很多)。 Andrey Barinov 2019.07.28 10:35 #262 Реter Konow: 我建议将指标作为GUI的载体,而资源则用于与专家顾问沟通。此外,在MT4中,你将能够使用面板从标准图表中控制专家顾问测试器。所有的控制都可以工作,而不仅仅是按钮。你将能够向被测试的EA发送文本和其他任何东西。我已经测试过了。一切正常。 彼得,你不明白。 有一个 顾问。它还在一个不可见的图表上额外运行自己,只在代理模式下运行。代理商上没有运行任何事件。即,资源不能调用,计时器不会启动,滴答声不会出现。 如果该指标触发了一个EA,这就是两个实体。 专家顾问可以随心所欲地创建这些代理。每个人都成为一个独立的线程。 Реter Konow 2019.07.28 10:39 #263 Andrey Barinov: 彼得,你不明白。 有一个 顾问。它还在一个不可见的图表上额外运行自己,只在代理模式下运行。代理商上没有运行任何事件。即,资源不能调用,计时器不会启动,滴答声不会出现。 如果该指标触发了一个EA,这就是两个实体。 专家顾问可以随心所欲地创建这些代理。每个人都成为一个独立的线程。 你是说像在一个不可见的图表上以代理模式启动自己?这是新的东西。我不知道这件事。 Andrey Barinov 2019.07.28 10:40 #264 Реter Konow: 你是说像在一个不可见的图表上以代理模式运行自己?这是新的东西。我不知道这件事。 图表应用模板 Реter Konow 2019.07.28 10:41 #265 Andrey Barinov: 彼得,你不明白。... 一个顾问可以拥有他想要的任何数量的这些代理。每一个人都是作为一个独立的流出来的。 所以多线程已经存在?而这里没有人知道吗? fxsaber 2019.07.28 10:41 #266 Andrey Barinov: 有一个 顾问。它还能自己 运行。 KB测试器也有同样的原理。你是否能够解决调试这样一个EA的问题?当测试器按照这个原则制作时,编写它的不便之处在于调试的困难。 fxsaber 2019.07.28 10:42 #267 Реter Konow: 那么事实证明,多线程已经存在?而这里没有人知道吗? 这被称为 "没有听到你的对话者"。 关于交易、自动交易系统和交易策略测试的论坛 MQL中的异步和多线程编程 fxsaber, 2019.07.25 12:16 仅在MQL内部,这两项任务都是通过自动运行EA计数来解决的。 Andrey Barinov 2019.07.28 10:43 #268 Реter Konow: 这是否意味着多线程已经存在?而这里没有人知道吗? 这是一个众所周知的技巧。这并不是我发明的。这是我几年前在一个论坛上发明的。 Andrey Barinov 2019.07.28 10:45 #269 fxsaber:CB测试仪也有同样的原理。你是否能够解决调试这样一个EA的问题?当我根据这个原则制作测试器时,编写的不便之处在于调试的困难。 打印、ASSERT、DEBUG。在这种情况下,我不使用标准调试器... Реter Konow 2019.07.28 10:46 #270 Andrey Barinov: 这是一个众所周知的技巧。这并不是我发明的。几年前我从一个论坛上得到了它。 这种 "多线程 "与它的概念相符的程度如何?是否可以用这个函数将程序的任务分成线程? 1...202122232425262728293031323334...40 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我开始重读这个主题,伊戈尔已经写过这个问题了。
这就是我想说的,Yuri,我们必须分配内存并注册线程。
伊戈尔说你需要分配和注册,而你说你不需要做任何事情。
这就是我头晕的原因。其结果是陷入了僵局。
伊戈尔在大学里作为专家学习,他应该比我们这些自学成才的研究员了解更多。
从一开始,我就倾向于同一个想法--内存必须被分配和初始化。
初始化和内存分配 是正确编码的关键,因为它不能流动,也不能是垃圾。
所以我的问题是Igor,请解释一下在C++中如何做到这一点?
不是用语言,用例子,我什么都不懂 ))
伙计,你不能在专业人员上多线程,没有冒犯的意思。但是,如果你有铁一般的心情,请继续阅读并弄清楚。
https://en.cppreference.com/w/cpp/thread
https://en.cppreference.com/w/cpp/atomic
如果你需要一个例子,见下文。
https://en.cppreference.com/w/cpp/thread/thread/join
https://en.cppreference.com/w/cpp/thread/async
同样,这是一个棘手的问题,很容易出现问题(例如,从一个比共享数据更晚销毁的产卵线程中解钩,在没有适当同步的情况下的编译器优化,还有很多)。
我建议将指标作为GUI的载体,而资源则用于与专家顾问沟通。此外,在MT4中,你将能够使用面板从标准图表中控制专家顾问测试器。所有的控制都可以工作,而不仅仅是按钮。你将能够向被测试的EA发送文本和其他任何东西。我已经测试过了。一切正常。
彼得,你不明白。
有一个 顾问。它还在一个不可见的图表上额外运行自己,只在代理模式下运行。代理商上没有运行任何事件。即,资源不能调用,计时器不会启动,滴答声不会出现。
如果该指标触发了一个EA,这就是两个实体。
专家顾问可以随心所欲地创建这些代理。每个人都成为一个独立的线程。
彼得,你不明白。
有一个 顾问。它还在一个不可见的图表上额外运行自己,只在代理模式下运行。代理商上没有运行任何事件。即,资源不能调用,计时器不会启动,滴答声不会出现。
如果该指标触发了一个EA,这就是两个实体。
专家顾问可以随心所欲地创建这些代理。每个人都成为一个独立的线程。
你是说像在一个不可见的图表上以代理模式运行自己?这是新的东西。我不知道这件事。
图表应用模板
彼得,你不明白。
...一个顾问可以拥有他想要的任何数量的这些代理。每一个人都是作为一个独立的流出来的。
所以多线程已经存在?而这里没有人知道吗?
有一个 顾问。它还能自己 运行。
KB测试器也有同样的原理。你是否能够解决调试这样一个EA的问题?当测试器按照这个原则制作时,编写它的不便之处在于调试的困难。
那么事实证明,多线程已经存在?而这里没有人知道吗?
这被称为 "没有听到你的对话者"。
关于交易、自动交易系统和交易策略测试的论坛
MQL中的异步和多线程编程
fxsaber, 2019.07.25 12:16
仅在MQL内部,这两项任务都是通过自动运行EA计数来解决的。
这是否意味着多线程已经存在?而这里没有人知道吗?
这是一个众所周知的技巧。这并不是我发明的。这是我几年前在一个论坛上发明的。
CB测试仪也有同样的原理。你是否能够解决调试这样一个EA的问题?当我根据这个原则制作测试器时,编写的不便之处在于调试的困难。
打印、ASSERT、DEBUG。在这种情况下,我不使用标准调试器...
这是一个众所周知的技巧。这并不是我发明的。几年前我从一个论坛上得到了它。