Aidez-moi à apprendre à programmer. - page 10

 
Nikolay Mitrofanov:

Ouais. TS.

Oui. Et cela est durement mis à mal par le manque d'expérience des experts en développement dans MT5.

 
Dmitry Fedoseev:

Oublie ton nom, qu'est-ce que ça peut me faire ? Et tu ne me répondais pas non plus))))

Vous feriez mieux de ne pas oublier le vôtre. A en juger par vos réponses, vous êtes à Narnia)

 
Dmitry Fedoseev:

Oui. Et il est sévèrement gribouillé par le manque d'expérience des experts en développement dans MT5.

Ahahahahahaha, oohohohohohoho))))))

Alors voilà le truc. Vous craignez pour votre réputation de programmeur. Ok) Je suis un jeune inexpérimenté qui s'est retrouvé dans une dispute entre le Grand Dimitri et tous les autres. Dimitri a l'impression d'être bousculé et attaque immédiatement sans discernement, bousculant du caca partout. Puis il se lèche les doigts et, avec un rire de vainqueur, écrit ses programmes et ses scripts avec ces doigts odorants victorieux, en utilisant l'expérience de 8 ans)))). Quel héros !


Ok. Bonne chance dans la promotion de votre artisanat et de toutes vos autres activités de programmation. Vous y arriverez tous un jour.

 
Nikolay Mitrofanov:

Ahahahahahaha, oohohohohohohoh))))))

C'est donc de ça qu'il s'agit. Vous craignez pour votre réputation de programmeur. OK) Je suis un jeune inexpérimenté qui s'est retrouvé dans une dispute entre le Grand Dimitri et tous les autres. Dimitri a l'impression d'être bousculé et attaque immédiatement sans discernement, bousculant du caca partout. Puis il se lèche les doigts et, avec un rire de vainqueur, écrit ses programmes et ses scripts avec ces doigts odorants victorieux, en utilisant l'expérience de 8 ans)))). Quel héros !


Ok. Bonne chance dans la promotion de votre artisanat et de toutes vos autres activités de programmation. Vous y arriverez tous un jour.

Aucun commentaire. Je vais juste le commémorer, je veux dire.

 
Dmitry Fedoseev:
L'idée même que la fonction PositionsTotal() puisse obtenir un nombre du courtier à chaque fois est brillante !

Demandez à votre courtier, obtenez-le.

La fonction le prend à partir de l'état interne du terminal pour la paire donnée, qui est mis à jour soit à l'arrivée d'un nouveau tick et à l'appel du gestionnaire d'événement, soit (pour mql4) de manière forcée, par l'appel de RefreshRates(). Mais il est appelé à chaque fois, le compilateur tout-puissant n'y optimise rien. Le terminal met en cache, mais c'est différent.

J'espère que vous gérez les erreurs, regardez-vous intelligemment dans _LastError au moins parfois ?

 
Nikolay Mitrofanov:

Quel plaisantin vous êtes)))

Il est tout à fait naturel que la fonction soit appelée autant de fois qu'il est nécessaire de la comparer.

Le compteur le confirme))

Tu es un tel plaisantin. Vous ne serez même pas capable de dire que c'est une blague.

La question était de savoir où la fonction PositionsTotal() prend la valeur de comparaison - elle obtient le nombre chaque fois du courtier ou le stocke quelque part dans les variables du terminal et n'est mise à jour qu'à l'ouverture et à la fermeture.

C'est juste qu'il semble qu'il n'y ait plus de redondance, voire aucune.

La question était d'un autre ordre : le compilateur optimise-t-il et met-il en cache le résultat des appels de fonction dans ce cas ? C'est pourquoi j'ai cité non pas exactement PositionsTotal() mais une autre fonction dans l'exemple pour vous montrer pourquoi cette approche est nulle. Et plus loin j'ai expliqué que je n'ai pas concentré mon attention spécialement, parce que c'est évident ! Lisez-vous les commentaires en diagonale ?

 
Tio Nisla:

La question était d'un autre ordre : le compilateur optimise-t-il et met-il en cache le résultat des appels de fonction dans ce cas ? Eh bien, par le nombre d'appels, je n'ai pas cité exactement PositionsTotal(), mais une certaine fonction dans l'exemple, montrant pourquoi cette approche est nulle. Et plus loin j'ai expliqué que je n'ai pas concentré mon attention spécialement, parce que c'est évident ! Lisez-vous les commentaires en diagonale ?

"Caching" est le seul mot que vous connaissez ? Il n'y avait pas de telle question. La question portait sur autre chose, et la réponse se trouvait quelque part sur la 3ème ou 4ème page, et il existe même une telle réponse, que l'on peut éclater de rire, ou brûler de honte, selon ses convictions personnelles.

Et ce qui compte, c'est la fonction. Mais pas pour vous... apparemment...

 
Tio Nisla:

La question était d'un autre ordre : le compilateur optimise-t-il et met-il en cache le résultat des appels de fonction dans ce cas ? Eh bien, par le nombre d'appels, je n'ai pas cité exactement PositionsTotal(), mais une certaine fonction dans l'exemple, montrant pourquoi cette approche est nulle. Et plus loin j'ai expliqué que je n'ai pas concentré mon attention spécialement, parce que c'est évident ! Lisez-vous les commentaires en diagonale ?

Tu ne sais pas si c'est une mise en cache ou pas. Si c'est du cache, c'est cool. Je pense que les développeurs ont trouvé une solution, car c'est tellement évident pour les professionnels.

Non, je lis attentivement, mais je peux aussi mal comprendre quelque chose, car je ne suis pas un expert.

Merci pour la réponse.

 
Nikolay Mitrofanov:

On ne sait pas si c'est une mise en cache ou non. Si c'est une mise en cache, c'est cool. Je pense que les développeurs ont pensé à cela, puisque c'est tellement évident pour les pros.

Non, je lis attentivement, mais je peux aussi mal comprendre quelque chose, car je ne suis pas un expert.

Merci pour la réponse.

Oui, c'est cool si ça cache... Mais si quelqu'un d'autre avait au moins une petite compréhension de ce qu'est la mise en cache et de l'objet de la conversation en premier lieu.

 
Parlons un peu plus des fuites de mémoire... ...pour aller avec... traditionnellement...
Raison: