Programación asíncrona y multihilo en MQL - página 21

 
Roman:


A continuación se muestra un ejemplo de escritura de código lineal asíncrono en un hilo para fines ilustrativos.

CTask *task2   = obj2.CALLBACK_FUNC(DeleteOrdersLimits(Magic));  //Выполняется асинхронно в пуле потоков

esto no funcionará:

Igor Makanu:

pero cuando se utilizan aplicaciones multihilo, el control de estos hilos es un dolor de cabeza para el desarrollador, no se comprobó la disponibilidad del cálculo - se obtuvo un error, que aparecerá en algún momento desconocido

Vale, tenía ganas de escribir en un tema con un nombre tan bonito - escribí, así que escribí... recordó a Don Quijote y su eterna lucha con los molinos de viento ))))

Un buen equipo de profesionales, creo que todavía hay algo que hablar

 
Yuriy Asaulenko:

....

¿Por qué, hipotéticamente, necesitaría su GUI, etc., si se puede escribir en Sharp o Python en dos tiempos? Al usuario no le importa en qué está escrito, necesita la funcionalidad, no los detalles de la implementación. Es decir, un programador no necesita este tipo de productos, pero a un usuario no le importa en absoluto, le importa el precio, y obviamente es más barato y más funcional en Sharp.

1. ¿Dónde encontrará compradores de sus programas Sharp?

2) ¿Cómo va a demostrar la seguridad de sus programas?

3. Usted, como programador experimentado, sugiere que no se utilice un lenguaje de aplicación en el desarrollo de CT, porque Hace años que no entiendo por qué.

4. Si se propone hacer un programa híbrido - usar la GUI de Sharp, y escribir la lógica en MCL, - intente enlazar las tablas de Sharp con el Asesor Experto. Ha pasado medio año, y el artículo que muestra cómo hacerlo aún no ha sido publicado. Sospecho que hay problemas muy serios ahí. Y la interfaz gráfica de usuario a nivel de botones - se puede hacer con una biblioteca interna.

En definitiva, tu sugerencia de mantener el ICL es como sugerir hacer no sé qué e ir no sé dónde, porque parece que son buenos alimentos allí....

 
Igor Makanu:

no funcionará:

Funciona en C y C++ en una de las bibliotecas ))
¿En qué se diferencia mql de C++?
Si los desarrolladores estuvieran dispuestos, podrían implementar esta funcionalidad en mql de forma muy realista.
Al fin y al cabo, la idea en sí vale la pena, sobre todo porque estas tecnologías son bien conocidas.
Y lo más probable es que el trabajo en los agentes se implemente de forma similar, en un pool de hilos.

 
Реter Konow:

1. ¿Dónde va a encontrar compradores de sus programas Sharp?

2) ¿Y cómo van a demostrar la seguridad de estos programas?

3. Usted, como programador experimentado, propone rechazar el uso de un lenguaje de aplicación en el desarrollo de CT, porque... Hace años que no entiendo por qué.

4. Si se propone hacer un programa híbrido - usar la GUI de Sharp, y escribir la lógica en MCL, - intente enlazar las tablas de Sharp con el Asesor Experto. Ha pasado medio año, y el artículo que muestra cómo hacerlo aún no ha sido publicado. Sospecho que hay problemas muy serios ahí. Y la interfaz gráfica de usuario a nivel de botón, se puede hacer con la biblioteca interna.

En definitiva, tu sugerencia de dejar MKL es como sugerir hacer esto, no sé qué e ir allí, no sé dónde, porque parece que se alimentan bien allí....

1. Busque clientes en el lateral. El mercado no es el único lugar donde se pueden encontrar.

El Mercado no es un negocio. Para los MK es parte del negocio).

2., 3. и 4. Para mí, el MKL (o cualquier otro lenguaje de cualquier terminal) no es más que el lenguaje de interfaz entre el terminal y el ST. El CT no debe depender del terminal, y debe ser capaz de conectarse a cualquier terminal a través de una interfaz adecuada.

Tengo este concepto desde el principio. Todo esto es bastante realizable, no veo ningún problema. Esto es, por ejemplo, lo que la ACM hace con la DLL.


No hay importación de bibliotecas en MKL. En la base de datos vemos el historial de TF 1m y la secadora. Todo esto se rellena en tiempo real a medida que avanza la obra.
 
He hecho una cola de mensajes que procesa temporalmente los comandos entrantes y notifica cuando la operación se completa. no veo la necesidad directa de crear hilos separados
 
Yuriy Asaulenko:

1. Busque compradores en el exterior. El Mercado no es un negocio.

El Mercado no es un negocio. Aquí, para los MK, es parte del negocio).

2., 3. и 4. Para mí, el MKL (o cualquier otro lenguaje de cualquier terminal) no es más que el lenguaje de interfaz entre el terminal y el ST. El CT no debe depender del terminal, y debe ser capaz de conectarse a cualquier terminal a través de una interfaz adecuada.

Tengo este concepto desde el principio. Todo es bastante factible, no veo ningún problema.

1 y 2 no tienen respuesta. ¿Buscando en un lugar poco claro y sin saber cómo convencer de que el programa es seguro? ¿Y un manual de 10 páginas para ponerlo en marcha, cómo conectar TC escrito en un lenguaje no aplicado a todo tipo de plataformas? ))

TC multiplataforma: ¿quieres apostar? - Estudia para convertirte en programador y verás cómo.

Me haces reír siempre. En serio. Un programador-practicante que llama a no utilizar un lenguaje de aplicación para resolver problemas muy especializados, sino a resolver esos problemas en lenguajes UNIVERSALES, ¡por la UNIVERSALIDAD! La practicidad y la conveniencia brotan simplemente de cada frase.

 
Yuriy Asaulenko:
....


No hay importación de bibliotecas en MKL. En la base de datos vemos el historial de TF 1m y el vaso. Todo ello se rellena en tiempo real a medida que avanza la obra.

No. Sólo se transfieren los datos de la plataforma una vez por minuto. Se muestra la interacción en vivo y el llenado de la tabla con datos con más frecuencia que una vez por segundo. Y los datos tienen que ser transferidos en dos direcciones. De MKL a sharp y viceversa.

 
Реter Konow:

Me haces reír siempre. En serio. ¡Un programador-práctico que llama a no utilizar un lenguaje de aplicación para resolver problemas altamente especializados, sino a resolver estos problemas por métodos UNIVERSALES y en aras de la UNIVERSALIDAD! La practicidad y la conveniencia brotan de cada frase.

Para ser sincero, yo también me divierto leyendo tus posts. Sobre los negocios, en particular.

No estoy llamando a nadie a nada y no estoy vendiendo nada. Si quieres usar hilos - usa C++/C# y no hay problema. O puedes quejarte eternamente de que no hay hilos en MKL.

 
Реter Konow:

No. Sólo transfieres los datos de la plataforma una vez por minuto. Se muestra la interacción en vivo y el llenado de la tabla con datos con más frecuencia que una vez por segundo. Y los datos tienen que ser transferidos en dos direcciones. De MKL a sharp y viceversa.

Una vez por minuto. Experto en tecnología)). Tienes un evento -OnTick, llama a la función DLL en él y pasa los datos actuales de la vela. Eso es todo).

Vale, olvídalo.

 
Yuriy Asaulenko:

...

Si quieres usar hilos, usa C++/C# y no hay problema.

No los necesitamos allí. Las capacidades de otros lenguajes no contribuirán al nivel del software aquí en la comunidad. Habrá híbridos feos para uso personal y ya está.
Razón de la queja: