Programação assíncrona e multi-tarefa em MQL - página 9

 
Roman:

Isso foi apenas um palpite, ainda não verifiquei onde é usado.
Procurei no Google quais idiomas usam o EventLoop, é Py, JS, Qt, provavelmente mais alguns.
A questão não é onde ela é aplicada, mas na própria tecnologia sem o uso de fios.
Então por que não pedir emprestada a tecnologia e implementar em mql seu EventLoop?

Você ainda não verificou? Você pode testá-lo?

Como você imagina a assincronia sem roscas? Você pode colocar suas calças sobre sua cabeça também?

 
Dmitry Fedoseev:

Você ainda não verificou? Você pode testá-lo?

Como você imagina a assincronia sem roscas? Você pode colocar suas calças sobre sua cabeça também?

Os desenvolvedores sabem melhor, acho que eles sabem o que quero dizer.
Provavelmente sim, eu falei mal, e o Thread Pool é usado e o Callback é usado para fazer o trabalho.
E desta forma se consegue escrever código assíncrono em uma única linha, e cada solicitação é considerada como um evento.

Nos testes em agentes, acho que o Thread Pool é usado, apenas para processos, é um comportamento muito semelhante.
Por esta razão, a tecnologia em si já existe em mql, apenas não desenvolvida para os usuários, em código assíncrono por escrito.

Aqui está um entendimento de como o EventLoop funciona no Node.jsref
Veja como a EventLoop funciona em asyncioref.

 
Roman:

...
Aqui está uma visão de como o EventLoop funciona no Node.js link
Veja como a EventLoop funciona em asyncio ref.

Sim, eu já percebi que você e todos aqueles adeptos da programação assíncrona estão no mesmo fio e sabem como colocar suas calças sobre sua cabeça.

***

Eu gostei mais do outro artigo sobre o EventLoop. Passo a citar: "já que a maioria dos caroços modernos são multi-tarefas"... Não li mais nada - isso foi o suficiente.

 
Por esta razão, gostaria que os desenvolvedores ouvissem esta sugestão, e desenvolvessem seu próprio EventLoop.
Então o terminal Metatrader irá quebrar tudo e todos, e definitivamente não será igual!
 
Roman:
É por isso que eu gostaria que os desenvolvedores ouvissem esta sugestão, e desenvolvessem seu próprio EventLoop.
Então o terminal Metatrader rasgará tudo e todos, e não será inigualável!

Esqueça o EventLoop. Besteira. Mostre-me como você coloca suas calças sobre sua cabeça.

***

Leia um pouco sobre o assunto, discutindo como obter uma entrevista com perguntas sobre o EventLoop. Parece que é algum tipo de fetiche de pitão e j-nozzle. Não tem nada a ver com a realidade.

***

Romano:

...

Aqui está uma visão de como o EventLoop funciona no Node.js ref
...

Vamos ler o artigo. No início "NodeJS é uma aplicação Single Thread executada em uma plataforma escrita com C++, esta plataforma usa Multi-Thread para executar tarefas simultaneamente".

Continue lendo "Como um programa C++, ele suporta multi-tarefas, portanto, os pedidos aqui serão tratados por multi-tarefas. O NodeJS também suporta Multi-Processos, isto significa que eles podem ser executados em um Núcleo".

Surge a pergunta: "mas o que o autor deste artigo tomou quando o escreveu?

 
Dmitry Fedoseev:

Eu gostei mais do outro artigo sobre o EventLoop. Passo a citar: "já que a maioria dos caroços modernos são multi-tarefas"... Não li mais nada - isso foi o suficiente.

O objetivo é permitir que o usuário escreva código assíncrono em uma única linha, já que o Expert/Script trabalha em uma única linha.
E na selva do terminal já estará funcionando desenvolvido, não disponível a ninguém de fora da EventLoop !
Isto pode ser um absurdo para você, eu tenho um servidor escrito em Py usandoEventLoop.
E processa mais de mil tarefas de cada vez de forma assíncrona, isso é o delírio, mesmo que todos pensem que Py é lento.
Escreva de forma assíncrona e você voará, eu não uso calças sobre minha cabeça, eu só uso a tecnologia certa.

 

Outro artigo sobre o assunto: "O código assíncrono remove uma operação de bloqueio do fluxo principal do programa, para queele continue funcionando, mas em outro lugar, e o manipulador possa continuar. Simplificando, o "processo" principal coloca uma tarefa e a passa para outro "processo" independente. :)

Nah, acontece que esta citação é deste artigo:
Roman:

...
Veja como a EventLoop funciona em asyncio link

Aí está - o programa continua a ser executado em outro lugar... e o manipulador fica aqui.

Você ainda não entendeu que o autor deste artigo não tem nenhuma habilidade no que ele está falando? Ele deveria ler algo como "Windows Fundamentals", dos anos 90.

Por acaso, ele dá ao processador poderes místicos em seus artigos?

 
Roman:

...Utilizando apenas a tecnologia correta.

Se você ainda entendesse o que estava usando. Se tudo permanecesse em um único fio (se isso fosse possível), não haveria aumento de velocidade. O aumento de velocidade vem à custa da criação de um processo e de tê-lo processado por outro núcleo.

Romano:

...
E mais de mil tarefas são processadas de forma assíncrona de cada vez, isso é um disparate, enquanto todos acham que Py é lento.
...

Não pode haver mais tarefas processadas ao mesmo tempo do que há núcleos no processador.

 
Dmitry Fedoseev:

Outro artigo sobre o assunto: "O código assíncrono remove uma operação de bloqueio do fluxo principal do programa, para que ele continue funcionando, mas em outro lugar, e o manipulador possa continuar. Simplificando, o "processo" principal coloca uma tarefa e a passa para outro "processo" independente. :)

Não, acontece que essa citação é deste artigo:

Aí está - o programa continua a ser executado em outro lugar... e o manipulador fica aqui.

Você ainda não entendeu que o autor deste artigo não tem nenhuma habilidade no que ele está falando? Ele deveria ler algo como "Windows Fundamentals", dos anos 90.

Por acaso, ele dá ao processador poderes místicos em seus artigos?

O Thread Pool ou Coroutines é usado para este fim, você simplesmente não estudou esta tecnologia e não entendeu o objetivo completo.
Não tenho nenhum desejo de discutir com você sobre este assunto, esta tecnologia é usada com sucesso em outros idiomas e motores pelas empresas do mundo.
E o que você acha bobagem nos artigos, aparentemente você ainda não percebeu como tudo funciona em um só fio)).

 
Roman:

É para isso que o Thread Pool ou Coroutines são usados, você simplesmente não estudou a tecnologia dada e não entendeu todo o ponto até o final.
Não tenho nenhum desejo de discutir com você sobre este assunto, esta tecnologia é usada com sucesso em outros idiomas e motores pelas empresas do mundo.
E o que você acha bobagem nos artigos, aparentemente você ainda não percebeu como tudo funciona em um só fio)).

(Risos): Uau! A pressão das autoridades está em... também estar em algum lugar lá fora com esse código correndo em algum lugar lá fora)))) O poder divino não se aplica?

A própria expressão "Thread Pool" implica a presença de vários Threads.

Para estudar a tecnologia... ...você deve primeiro dominar o bom senso.