Flujo de eventos. ¿Cómo controlar y hacer que el evento sea inactivo? (+ resuelto) - página 4

 
Yedelkin:

Gracias, ya tengo todo optimizado allí :) Incluso con este artículo en mente, por lo que recuerdo. Tendré que esperar al siguiente grado de iluminación :)

¿Es posible determinar el Asesor Experto y el indicador por separado, si trabajan juntos a través de eventos personalizados?

No lo has leído bien. Ese artículo proporciona una metodología, puedes desarrollarla.
 
Rosh:
No lo has leído bien. Hay una metodología en ese artículo, puedes ampliarla.
No es difícil comprobar su afirmación.
 
sergeev:

aquí está mi caso particular, que empecé demostrando el no rechazo de eventos idénticos

https://www.mql5.com/ru/forum/5091#comment_112780

También escribí allí por qué se produce el desbordamiento.

Leeré el tema más tarde.

sargazo:

Sí, sí, EventChartCustom no está dentro de OnChartEvent, sino fuera. Ahora mira tu propio código:

void OnChartEvent(int iview, int id, long lparam, double dparam, string sparam)
{
    if (id==CHARTEVENT_CUSTOM+VM_IDLE)
    {
      ... 
    }
    EventChartCustom(m_chart, VM_IDLE, (long)event_idle, 0, ""); // отправили событие с указанием последнего счетчика 

Llega a la raíz del asunto. He mostrado una demostración del problema y su solución. Esta llamada a EventChart podría estar en cualquier parte del código.

Pues yo dije "que en este código EventChartCustom no está dentro deOnChartEvent, y estoy muy equivocado" :)

 
Rosh:
No lo has leído bien.

Vuelve a leer. La afirmación es infundada. En el artículo falta la respuesta a la pregunta "¿Cuánto consumen un Asesor Experto y un indicador por separado, si trabajan en conjunto a través de eventos personalizados?".

Rosh:
Ese artículo sólo daba una metodología, puedes desarrollarla.

La metodología se describe al principio del artículo. Se hace referencia a ella en la mitad del artículo. La metodología consiste en la comparación de los tiempos de ejecución de los Asesores Expertos que se ocupan de un determinado indicador. (Por cierto, he recordado que no me guié por el artículo - me las arreglé para evitar las intersecciones con los problemas descritos en la etapa de desarrollo).

Mi pregunta no es sobre cómo determinar la velocidad de prueba del Asesor Experto/indicador, sino cómo determinar cuánto (qué volumen de RAM) consumen un Asesor Experto y un indicador por separado, si (1) trabajan simultáneamente en tándem y (2) trabajan simultáneamente enviando/recibiendo eventos personalizados. Es decir, estamos hablando de una situación, cuando un Asesor Experto muestra simultáneamente la actividad comercial, mientras que el indicador - la actividad de cálculo. Sólo puedo ver el tamaño total de la RAM consumida por el terminal con un Asesor Experto ejecutándose en él en el Administrador de Tareas. Pero, ¿cómo puedo saber la distribución de este tamaño entre el Asesor Experto y el indicador?

 

Yedelkin:

cómo determinar cuánto (cuánto volumen de RAM) consumen el Asesor Experto y el indicador por separado.

¿cómo saber la distribución de esta capacidad entre el Asesor Experto y el indicador, y es posible averiguarlo?

Me da vergüenza preguntar: ¿por qué necesito saberlo? (no es una pregunta retórica, sino muy práctica)
 
Yedelkin:

Sí... Con esa actitud hacia los respondedores...

A ti mismo. Adelante y arriba.

 
sergeev:
Incluso me da vergüenza preguntar: ¿por qué necesitas saber esto? (No es una pregunta retórica, es una pregunta práctica)
La respuesta también es aplicable :) Si el esquema Asesor Experto+indicador descrito anteriormente empieza a consumir demasiada RAM y el hilo de eventos del usuario no parece tener nada que ver, quiero saber dónde buscar el problema: en el Asesor Experto o en el indicador. Es conveniente determinar qué programa es el responsable del consumo de memoria.
 
TheXpert:

Sí... Con esa actitud hacia los respondedores...

A ti mismo. Adelante, canta.

¿Te he ofendido en particular? - Lo siento. La actitud hacia todos los intervinientes es la más positiva. Debes estar imaginando cosas... Compruebo y evalúo cada argumento. En cualquier caso, estoy lejos de su dureza ocasional. Por eso te sugiero que no conviertas el tema en relaciones personales.

 
Yedelkin:
¿Te he hecho daño en particular? - Lo siento. Tengo la actitud más positiva con todos los que responden. Compruebo y evalúo cada argumento. En cualquier caso, estoy lejos de su dureza ocasional.

Su comportamiento simplemente recuerda a la broma del barco y el helicóptero :)

El justo Moesha había rezado a Dios toda su vida y confiado en él. Entonces, un día, hubo una inundación en el pueblo donde vivía.
Moisha se sumergió en las oraciones por la salvación y, mientras tanto, el agua subió hasta la mitad de la planta baja.
Sus amigos pasaban por allí en una barca:
-Siéntate, Moisha, te salvaremos.
- No, respondió Moisha, Dios me salvará.
Mientras tanto, el agua había llegado a la mitad del primer piso.
Un tronco pasó flotando, con las caras conocidas de Moyshe en él:
- Siéntate, Moyshe, te salvaremos.
- No, dijo Moesha, Dios me salvará, y siguió rezando.
Mientras tanto, el agua había subido hasta el techo donde estaba sentado Moishe,
un helicóptero subió y sus compañeros bajaron por una escalera de cuerda:
- Entra, Moisha, te salvaremos,
- No", respondió Moyshe, "Dios me salvará", y siguió rezando. Entonces el agua subió por encima del techo y Moyshe se ahogó.
Entonces Moisha se presentó ante el Señor:
- ¿Por qué no me ayudaste? - preguntó Moesha al Señor con reproche,
- He puesto tanta fe en ti, te he rezado, he esperado tanto tu ayuda.
- ¿Y quién -dice el Señor- te envió un barco, un tronco y un helicóptero?

 
Rosh:

Es que tu comportamiento me recuerda al chiste del barco y el helicóptero :)

OK, ya veo.TheXpert hizo un escándalo y aquí vamos.

Concluyo que falta la respuesta al segundo bloque de preguntas (sobre la estimación por separado del consumo de memoria de los programas que se ejecutan juntos). Gracias por responder a la primera serie de preguntas.