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

 
Dmitry Fedoseev:

Sonho... e ter inveja em silêncio.

E posso dizer novamente:"Não pode haver mais tarefas processadas ao mesmo tempo do que um processador tem núcleos". Se você pensa o contrário, eu me levanto e aplaudo.

Por isso inventaram a execução assíncrona de tarefas com contexto de transferência de controle, de acordo com a regra FIFO (primeiro a chegar, primeiro a ser servido).
O EventLoop atua como um link para o Thread Pool, para escrever código linear em uma única linha.
Ou seja, você escreve o código como de costume linearmente em uma linha, e a EventLoop distribui a execução das tarefas para o Thread Pool.
O que é perfeito para Expert Advisors e scripts mql rodando em um só fio!
Tudo é simples e direto.

Arquivos anexados:
gmgg488y.png  48 kb
 
Roman:

É por isso que eles inventaram a execução assíncrona de tarefas de acordo com a regra FIFO (primeiro a chegar, primeiro a ser servido).
O EventLoop serve como um link para o Thread Pool, para escrever código linear em uma única linha.
Ou seja, você escreve o código como de costume linearmente em uma linha, e a EventLoop distribui a execução das tarefas para o Thread Pool.
O que é perfeito para Expert Advisors e scripts mql rodando em um só fio!
É simples e direto.

Assim mesmo - substitua a palavra usual "ordenado" por uma abreviatura inteligente FIFO e você fica com uma impressão... e há até mesmo um artigo inteiro sobre wikipedia. Talvez devêssemos criar um instituto de pesquisa científica sobre o assunto?

Não há um código em algum lugar que não esteja escrito de forma linear?

Mas, mesmo assim, podemos ver progressos - a Thread Pol já apareceu.

 
Dmitry Fedoseev:

Assim mesmo - substitua a palavra usual "ordenado" por uma abreviação inteligente FIFO e você fica com uma impressão... e há até mesmo um artigo inteiro sobre wikipedia. Talvez devêssemos criar um instituto de pesquisa científica sobre o assunto?

Não há um código em algum lugar que não esteja escrito linearmente?

FIFO (primeiro a entrar, primeiro a sair) está apenas fora de ordem, portanto saiba a essência do assunto ))

 
Roman:

FIFO (primeiro a chegar, primeiro a ser servido) está fora de ordem, portanto saiba a essência do assunto ))

Sim, é isso mesmo! Chegou a hora de organizar um FIFO.

Claro, é engraçado - primeiro a chegar, primeiro a ser servido - isso não é LIFO!

Portanto, a LIFO está em ordem. Sim?

 
Dmitry Fedoseev:

Sim, é isso mesmo! Chegou a hora de organizar um NIFIFO.

É divertido - primeiro a chegar, primeiro a ser servido - isso NÃO é LIFO!

Portanto, LIFO é a ordem do dia. Sim?

LIFO ou último a entrar, primeiro a sair, também não há ordem aqui.
Você está interpretando o pedido incorretamente, ele deve ser interpretado como ordem assíncrona de chegada aoThread Pol de EventLoop, e não ordem de processamento.
A ordem de processamento dependerá das tarefas já recebidas naThread Pol, ou seja, de forma assíncrona.
AThread Pol só as executa ea EventLoop asdistribui.

 
Roman:

LIFO ou último a entrar, primeiro a sair (veio por último e foi processado primeiro) - aqui também não há seqüência.
Você está interpretando o pedido incorretamente, ele deve ser interpretado como a ordem assíncrona de chegada ao Thread Pol de EventLoop, e não a ordem de processamento.
A ordem de processamento dependerá das tarefas já recebidas na Thread Pol, ou seja, de forma assíncrona.
AThread Pol só as executa ea EventLoop asdistribui.

Original! Veio, foi, primeiro, último - isso não está fora da categoria de ordem?

O que é "ordem assíncrona"? Existe também uma ordem síncrona? Você sabe ao menos sobre o que está discutindo? Ou você está apenas passando por palavras familiares? E criar combinações delas com outras palavras familiares.

E aqui está o significado desta obra-prima por sua profundidade de pensamento: "A ordem de processamento dependerá das tarefas inseridas noThread Pol, ou seja, de forma assíncrona". explicar. Você entendeu?

"Thread Pol ...EventLoop" - você tem um problema de priorização aqui.

 
Dmitry Fedoseev:

Original! Veio, foi, primeiro, último - isso não está fora da categoria de ordem?

O que é "ordem assíncrona"? Existe também uma ordem síncrona? E você sabe mesmo sobre o que está discutindo? Ou você está apenas passando por palavras familiares?

E qual o significado desta obra-prima por sua profundidade de pensamento - "A ordem de processamento já dependerá das tarefas inseridas no Thread Pol, ou seja, de forma assíncrona"? explicar. Você entendeu?

"Thread Pol ...EventLoop" - você tem o problema de priorização aqui.

Vejo que é inútil explicar qualquer coisa a você, você está por sua conta.
Como eles dizem, está tudo na rede.
Boa sorte com isso.

 
Roman:

Vejo que é inútil explicar qualquer coisa a você, você está por sua conta.
Como eles gostam de dizer, tudo está online.
Boa sorte com isso.

O que você pode explicar? E bobagens - sim, há na web, já vimos melhor.

 
Dmitry Fedoseev:

O que você pode explicar? E bobagem - sim, há bobagem na rede, já vimos melhor.

Ficou claro desde o início que, para você, tudo isso é uma besteira. ))
Outras pessoas utilizam com sucesso a abordagem assíncrona em suas soluções ))))

Espero que os desenvolvedores tenham ouvido a idéia do Eventloop, e que a implementem no futuro.

 
Roman:

Espero que os desenvolvedores tenham ouvido a idéia da Eventloop, e a implementem no futuro.

O futuro já está aqui.

A MT tem Eventloop.