La suscripción a OnBookEvent a veces se cae - ¿existe? - página 14

 
fxsaber:

No consigo que se borre.

¿Qué tal si cerramos todos los gráficos?

 
Andrey Barinov:

¿qué pasaría si todas las cartas estuvieran cerradas?

No serviría de nada, por supuesto.

 
Stanislav Korotky:

Según la respuesta del servicio de atención al cliente, se supone que el contador es el mismo para todo el gráfico (cada símbolo es diferente), y cada desarrollador MQL tiene que confiar en que otros desarrolladores MQL no cometerán un error al disminuir el contador en el mismo gráfico. Las explicaciones se añadirán a la ayuda.

"Salvar al ahogado es una cuestión de ahogados".

Larespuesta de Service Desk fue un poco diferente. Y la solicitud al Servicio de Atención al Cliente no se refería a ningún contador.

No obstante, el manejo del contador se arreglará en las próximas compilaciones. Exactamente como escribí antes.

La suscripción se suma al contador, la baja se suma al contador. El contador está dentro del horario. Cada herramienta (puede suscribirse a cualquier herramienta) tiene su propio contador. Este contador cuenta las suscripciones a los instrumentos que se originan en los programas adjuntos al gráfico dado. Cuando se cierra el gráfico, todos los contadores restantes que no sean cero se darán de baja.

 
Slava:

Larespuesta del Servicio de Atención al Cliente fue un poco diferente. Y la petición a Servicedesk no se refería a ningún contador.

Sin embargo, en futuras construcciones se corregirá el funcionamiento del contador. Exactamente como escribí antes.

Al suscribirse se añade un contador, al darse de baja se añade un contador. El contador está dentro del horario. Cada herramienta (puede suscribirse a cualquier herramienta) tiene su propio contador. Este contador cuenta las suscripciones a los instrumentos que se originan en los programas adjuntos al gráfico dado. Cuando se cierra el gráfico, todos los contadores restantes que no sean cero se darán de baja.

Has repetido lo que dijo el servicio técnico. La cuestión es que no hay garantía de salvar la suscripción de un programa MQL válido, que se ha suscrito una vez y no se ha dado de baja, pero hay un programa MQL ajeno que se dará de baja. Ya que el contador es para el gráfico y no para el programa. Al menos, eso parece.

 
fxsaber:

Y si un indicador invisible se ha disparado "accidentalmente" (estoy seguro de que hay algunos en el Mercado)... Hasta que no reinicie el Terminal, tendrá que seguir dando la lata en vano.

Con la llegada de los Servicios es aún más urgente.

Llevo mucho tiempo escribiendo una propuesta para un análogo del gestor de CPU (scripts) en la SD.

 

Para que no quede sin sustento, he aquí una cita de una nueva referencia (de próxima aparición):

Начальное значение счетчика подписок равно нулю. При каждом вызове MarketBookAdd() счетчик подписок для указанного символа на данном графике увеличивается на единицу (символ графика и символ в MarketBookAdd() не обязаны совпадать). При вызове MarketBookRelease() счетчик подписок на указанный символ в пределах графика уменьшается на единицу. Трансляция событий BookEvent по любому символу в пределах графика продолжается до тех пор, пока счетчик подписок по данному символу не станет равным нулю. Поэтому важно, чтобы каждая MQL5-программа, которая содержит вызовы MarketBookAdd(), при завершении своей работы правильно отписывалась от получения событий по каждому использованному символу с помощью MarketBookRelease(). Для этого достаточно, чтобы количество вызовов MarketBookAdd() и  MarketBookRelease() по каждому вызову было четным за всё время жизни MQL5-программы. Использолвание флагов или собственных счетчиков подписок внутри программы позволяет безопасно работать с событиями BookEvent и предотвращает отключение подписок на получение этого события в чужих программах в пределах одного графика.

Si se supone que hay que hacer nuevas correcciones de comportamiento, ¿cómo sonaría este fragmento? La recomendación resaltada en amarillo, cuyo cumplimiento no puede ser rastreado en los programas de otras personas y una fuente potencial de errores.

 
Slava:

Larespuesta del Servicio de Atención al Cliente fue un poco sobre otras cosas. Sí y la solicitud a servicedesk no tocó ningún contador.

Sin embargo, en futuras construcciones se corregirá el funcionamiento del contador. Exactamente como escribí antes.

Al suscribirse se añade un contador, al darse de baja se añade un contador. El contador está dentro del horario. Cada herramienta (puede suscribirse a cualquier herramienta) tiene su propio contador. Este contador cuenta las suscripciones a los instrumentos que se originan en los programas adjuntos al gráfico dado. Cuando se cierra el gráfico, todos los contadores restantes que no sean cero se darán de baja.

Muy a la espera de la nueva construcción (un montón de errores acumulados).

Razón de la queja: