Programmation asynchrone et multithread dans MQL - page 29

 
Реter Konow:

La communication via des ressources avec des copies sur des graphiques réguliers (pas OBJ_CHART) fonctionnera-t-elle ? Ou y a-t-il une sorte de limitation ?

Pas sûr. Si vous faites une telle expérience, faites-moi part des résultats ici.

 
Andrey Barinov:

Ai-je bien compris qu'avec cette mise en œuvre, l'approche OnTrade est hors de question ? Vous devez attendre le résultat des ordres de commerce dans un esclave ?

 
fxsaber:

Ai-je bien compris qu'avec cette mise en œuvre, l'approche OnTrade est hors de question ? Et il faut attendre le résultat des ordres commerciaux dans l'esclave ?

Je n'utilise pas OnTrade (j'écris du code multiplateforme et MT4 n'en dispose pas). Mais je n'attends pas beaucoup non plus (je n'utilise pas sleep et while). J'ai assez de ce que retourne OrderSend()

 
Реter Konow:

La communication via des ressources avec des copies sur des graphiques réguliers (pas OBJ_CHART) fonctionnera-t-elle ? Ou y a-t-il des restrictions ?

Chaque copie-agent EA n'a besoin de connaître que son propre numéro pour créer un nom de ressource unique.

 
Andrey Barinov:

Ce que renvoie OrderSend() est suffisant pour moi.

Resultat.deal = 0 - suffisant ? Et les bizarreries avec l'historique des transactions non synchronisé juste après l'envoi de l'ordre dans MT5.

OnTrade semble fonctionner en 4.

 
fxsaber:

Resultat.deal = 0 - est-ce suffisant ?

Je n'ai pas encore eu (result.order ==0 && result.deal==0)

https://docs.mql4.com/ru/runtime/running
Выполнение программ - Программы MQL4 - Справочник MQL4
Выполнение программ - Программы MQL4 - Справочник MQL4
  • docs.mql4.com
Каждый скрипт и каждый эксперт работает в собственном отдельном потоке. Все индикаторы работают в одном интерфейсном потоке терминала. Обработка тиков и синхронизация истории также производится в интерфейсном потоке. Если пользовательский индикатор вызван при помощи функции iCustom(), то этот индикатор работает в потоке вызвавшей его программы...
 
Andrey Barinov:

Pas au courant. Si vous faites une telle expérience, faites-moi part des résultats ici.

Je le ferai.

En général, il s'agit d'une situation étrange. Lorsque vous lisez des données via des ressources, vous devez spécifier l'adresse du programme dans lequel se trouve la ressource. Mais comme il y aura des copies du même EA en cours d'exécution, elles auront la même adresse. Comment la lecture/écriture des données sera-t-elle effectuée dans ce cas ? Curieux...

 
fxsaber:

Chaque copie de l'agent EA n'a besoin de connaître que son propre numéro pour créer un nom de ressource unique.

D'accord.
 
Andrey Barinov:

Je n'ai pas encore eu (result.order ==0 && result.deal==0)

C'est environ un cinq.

 
fxsaber:

C'est environ un cinq.

C'est de ça que je parle.

J'ai donné le lien vers quatre pour répondre au commentaire selon lequel OnTrade fonctionne en quatre.