Erreurs, bugs, questions - page 1657
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Si vous souhaitez recevoir des tâches depuis le nuage, n'oubliez pas que
Si vous souhaitez recevoir des tâches depuis le nuage, gardez à l'esprit que
Êtes-vous sûr d'avoir 1 gigaoctet de RAM ? Ce n'est pas 2 Go ? Et je le répète : y a-t-il un chiffre clair écrit quelque part dans la description ou la documentation ?
Ne vous méprenez pas : le texte original est le mien :"si la RAM est inférieure à 1 Go par agent".
Ajouté :
Et vous pouvez chercher des réponses dans la rubriqueNous lançons le service MQL5 Cloud Network !
Y a-t-il de l'argent à gagner là-bas, à part la bière ? )) Sauf, bien sûr, si vous possédez une ferme.
La fonction système Point() est en fait inlined et convertie en un simple accès à la variable _Point
Et les fonctions de paramétrage de la commande (OrderType(), OrderTicket(), etc.) sont inlined après que la commande ait été sélectionnée ? Si nous adressons de manière répétée, par exemple, le type de commande sélectionné, est-il judicieux de stocker le résultat de OrderType() dans une variable, et d'utiliser ensuite cette variable dans notre code ? Ou cela ne fera pas de différence par rapport à des appels répétés de la fonction ?
En d'autres termes, y a-t-il une différence dans la vitesse d'exécution, par exemple, de ces codes ?
и
Je l'ai testé moi-même. Le second code s'exécute quatre fois plus vite. C'est tout, la question n'est plus sur la table.
Pas micro. Nano. )
"a = OrderType()" - 3.45 ns.
"a = nType" - 2.19 ns.
Les fonctions de paramétrage des commandes (OrderType(), OrderTicket(), etc.) sont-elles inlined après la sélection de la commande ? Si nous adressons de manière répétée, par exemple, le type de commande sélectionné, est-il judicieux de stocker le résultat de OrderType() dans une variable, et d'utiliser cette variable plus tard dans le code ? Ou cela ne fera aucune différence par rapport à des appels répétés de la fonction ?
En d'autres termes, y a-t-il une différence dans la vitesse d'exécution, par exemple, de ces codes ?
и
Je l'ai vérifié moi-même. Le second code est exécuté 4 fois plus vite. Tout est clair, votre question a été répondue.
Quelle que soit la question, tout appel de fonction est toujours plus lent que la référence à une variable sur la pile, dans ce cas nType.
Personnellement, je mets toujours en cache les appels de fonctions MQL comme le vôtre dans le deuxième cas.
Quelle que soit la question, l'appel d'une fonction est toujours plus lent que l'accès à une variable sur la pile, dans ce cas nType.
Indépendamment de cette évidence, la question portait sur les fonctions en ligne. Par exemple, OrderType() n'est-il pas remplacé au moment de la compilation par quelque chose comme order.type.
Personnellement, je mets toujours en cache cesappels de fonctions MQL, comme dans votre deuxième cas.
Comme les mesures l'ont montré, c'est inutile.