Secuencia de ejecución de Init() y DeInit() - página 19

 
Slawa:

No hay solución significa "aún no se sabe cómo resolver", no "no lo hará".

Y con los eventos de los usuarios no hay ningún problema

Uf... Me estás asustando :)
 
fxsaber:

¿Cómo es posible que los servicios o la posibilidad de ejecutar varios EAs en un solo gráfico no cubran totalmente los problemas comentados?

Los problemas seguirán existiendo. El hecho de que haya un nuevo tipo de programa MQL no resuelve los problemas de otros tipos de programas MQL. Un buen software no permite que el usuario se equivoque. Escribir una frase sobre la incertidumbre del comportamiento en la ayuda es más fácil, por supuesto. La salvación de los ahogados depende de ellos.
 
Stanislav Korotky:
La salvación de los ahogados depende de ellos.
Por supuesto, se puede seguir lamentando que la roca siga sin contribuir a la salvación del ahogado cuando se le lanza un salvavidas.
 
elibrarius:
Sugiero borrar todo a partir del post 125 por ser irrelevante para una discusión constructiva sobre las prioridades deinit e init al cambiar de TFs.
Sería mejor borrar todo el hilo. Y olvidarlo como un sueño desagradable.
 
Dmitry Fedoseev:

Un indicador sí tiene primero inicial y luego deinit. Pero cuando se cambia el marco temporal, se crea la segunda instancia del indicador, y su init puede ejecutarse antes que el deinit de la instancia anterior (no iniciada).

El ejemplo más obvio - el guardado de los parámetros del usuario al cambiar el marco temporal - guardamos los parámetros en el deinit, los leemos en el init. Si el init de la nueva instancia se activa antes del deinit de la instancia anterior, los parámetros no se guardarán.

Prácticamente, el deinit de la instancia eliminada se dispara en la mayoría de los casos antes que el init de la nueva instancia, pero si se cambia muy rápido el marco temporal o se cargan los datos, entonces se produce un fallo.

Dimitri, cuando conduces un coche, ¿tienes que mirar por el retrovisor cuando ya has llegado? ¿O tiene que guardar periódicamente los parámetros necesarios en el indicador? Es como mirar por el espejo retrovisor.

 
fxsaber:
Por supuesto, puede seguir quejándose de que la piedra sigue sin contribuir al rescate de un ahogado cuando se lanza un salvavidas.

El rastrillo permanece. Eso es lo principal. (en esta analogía, se da una vuelta en un astillero a la carta, y la gente se ahoga al azar e inesperadamente).

Si las fichas viejas no están bien, las nuevas también lo estarán. El enfoque no cambia.

En definitiva, he expuesto todo, en mi opinión, de forma más que razonable y lógica. Si alguien está en el tanque, no puedo ayudar.

 
Stanislav Korotky:

Si las características antiguas no están bien, las nuevas también lo estarán. El enfoque no cambia.

La cuestión aquí es si no pueden o no quieren. Parece que no pueden.
 
Slawa:

En otras palabras, el orden de ejecución de OnInit y OnDeinit del indicador al cambiar el símbolo-períododel gráfico no debería molestar a nadie

OnInit inicia el temporizador, onDeinit lo borra. Como resultado de la cola equivocada, nadie sabe lo que está pasando.

Bug desagradable, que es descaradamente ignorado por los desarrolladores

 
Комбинатор:

Init inicia el temporizador, en deinit lo borra. Como resultado de la cola equivocada, no saben lo que está pasando.

Un error desagradable que es descaradamente ignorado por los desarrolladores

La cola es inequívoca.
 
fxsaber:
La orden es inequívoca.

Cuando cambie laf.

Si los indicadores todavía tienen basura en los búferes del antiguo TF, tal vez los temporizadores también se vean afectados.