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

 
Реter Konow:

E como você obtém os resultados dos cálculos de volta?

Em princípio, poderia escrevê-los para um recurso, certo?

E se você precisar passar uma série de dados para os cálculos? Dê-lhe um comando através do OnChartEvent(), ele acessará o recurso, lerá os dados, fará o cálculo e então escreverá o resultado para o recurso?

Mas, de qualquer forma, o comando só pode ser dado através do EventChartCustom()?

E se fizermos um loop após a primeira chamada, para que ele ligue e leia constantemente o recurso e execute comandos a partir dele?

Desculpe pelo grande número de perguntas. ))

Você tem um tempo interessante de experimentação pela frente!

Eu delego toda a lógica comercial. Não tenho que relatar os resultados, eles podem ser acessados de qualquer lugar do terminal.

 
Andrey Barinov:

Você tem um tempo interessante de experimentação pela frente!

Eu delego toda a lógica comercial. Seus resultados não precisam ser comunicados em nenhum lugar em particular, eles já estão disponíveis em qualquer lugar do terminal.

Obrigado por toda a sua ajuda. Aprendi muitas coisas novas. Estarei experimentando e publicarei os resultados neste tópico. Mas não será rápido, pois ainda tenho muitas tarefas a resolver de antemão.

Eu estou pensando assim. Se quando o OBJ_CHART é iniciado, ele é ligado para ler o recurso, então você pode se comunicar com ele mais adiante através dele, e ele fará todas as tarefas que o original que o iniciou pode fazer.


Acrescentado: a documentação diz que o modelo não pode ser colocado na EA como recurso. Portanto, há uma questão de portabilidade. Mas! o EA pode criar um modelo de si mesmo quando necessário e, além disso, carregá-lo e forçar sua cópia a executar apenas as funções necessárias, comunicando-se com ele por meio de recursos depois de ser laçado. Pergunto-me se esta opção não falhar em nenhum momento, a questão da multi-tarefa pode ser encerrada.

 
Реter Konow:

Acrescentado: a documentação diz que o modelo não pode ser colocado na EA como recurso. Portanto, há uma questão de portabilidade. Mas! o EA pode criar um modelo de si mesmo quando necessário e, além disso, carregá-lo e forçar sua cópia a executar apenas as funções necessárias, comunicando-se com ele por meio de recursos depois de ser laçado. Curiosamente, se esta opção não falhar em nenhum ponto, a questão da multi-tarefa pode ser encerrada.

O modelo não precisa ser migrado para nenhum lugar. Precisa ser criado uma vez no início da EA principal (desde que não sejam criados agentes)

 
Andrey Barinov:

O modelo não precisa ser movido para nenhum lugar. Precisa ser criado uma vez ao iniciar a EA principal (enquanto nenhum agente é criado)

Referia-me à portabilidade dos programas que utilizam os modelos. Você pode criar muitos modelos com diferentes funcionalidades e executá-los, se necessário, a partir da EA principal. Mas tal Conselheiro Especialista deve ser transferido junto com todos os modelos de computador para computador, porque não podem ser colocados nele.
 
Реter Konow:

Obrigado por sua ajuda. Aprendi muitas coisas novas. Vou experimentar e relatar os resultados neste tópico. Mas, não será rápido, pois ainda há muitas tarefas a serem concluídas antes disso.

Eu estou pensando assim. Se quando o OBJ_CHART é iniciado, ele é ligado para ler o recurso, então você pode se comunicar com ele mais adiante através dele, e ele fará todas as tarefas que o original que o iniciou pode fazer.


Acrescentado: a documentação diz que o modelo não pode ser colocado na EA como recurso. Portanto, há uma questão de portabilidade. Mas! o EA pode criar um modelo de si mesmo quando necessário e, além disso, carregá-lo e forçar sua cópia a executar apenas as funções necessárias, comunicando-se com ele por meio de recursos depois de ser laçado. Pergunto-me se esta opção não falhar em nenhum momento, a questão da multi-tarefa pode ser encerrada.

É uma solução interessante, mas é a falta de outra solução completa.
Além disso, não esqueça que usando esta abordagem, você não pode criar mais de 98 fios!
Uma vez que o terminal não permitirá que você abra mais de 99 gráficos. E isto já é uma limitação de possibilidades.
Para programas GUI onde não são necessários tantos fios, a solução funciona bem, mas não é uma opção onde são necessários mais de 98 fios.
Alguém verificou quanto tempo leva para lançar o agente especializado nesta abordagem? Quando se cria uma cópia de um modelo, etc.
Qual é o custo do tempo nesta solução?

 
Roman:

É uma solução interessante, mas é a falta de outra solução completa.
Além disso, não esqueça que usando esta abordagem, você não pode criar mais de 98 fios!
Uma vez que o terminal não permitirá que você abra mais de 99 gráficos. E isto já é uma limitação de possibilidades.
Para programas GUI onde não são necessários tantos fios, a solução funciona bem, mas não é uma opção onde são necessários mais de 98 fios.
Alguém verificou quanto tempo leva para lançar o Expert Advisor nesta abordagem? Quando se cria uma cópia de um modelo, etc.
Qual é o custo do tempo nesta solução?

Eu concordo. É uma solução de muleta e mesmo que todas as esperanças sejam cumpridas, ela só está disponível para mim e para algumas outras pessoas que desenvolveram a tecnologia interprogramas. Não funcionará para os outros. Fato.
 
Roman:

É uma solução interessante, mas é a falta de outra solução completa.
Além disso, não esqueça que usando esta abordagem, você não pode criar mais de 98 fios!
Uma vez que o terminal não permitirá que você abra mais de 99 gráficos. E isto já é uma limitação de possibilidades.
Para programas GUI onde não são necessários tantos fios, a solução funciona bem, mas não é uma opção onde são necessários mais de 98 fios.
Alguém verificou quanto tempo leva para lançar o agente especializado nesta abordagem? Quando se cria uma cópia de um modelo, etc.
Qual é o custo do tempo nesta solução?

Você não gosta de tudo, então está no seu próprio caminho para a dll. Deixei-lhe links para o livro de referência com exemplos, você olhou para ele? Ou você sentiu falta disso?

 
Vict:

Você não gosta de tudo, então está no seu próprio caminho para a dll. Deixei-lhe links para o livro de referência com exemplos, você o viu? Ou você sentiu falta disso?

Você está à minha frente com a resposta ) Eu só estou olhando agora, obrigado pelos links, é o certo para o tópico C++ ))
E o fato de ser difícil ou não, esse é outro assunto, eu tenho uma compreensão do que é))
Eu gosto de tudo isso )) diferentes abordagens para entender, e então escolher aquela que faz mais sentido para mim e que atende às exigências, tudo é simples.

 
Roman:

Você está à minha frente com a resposta ) Estou olhando para eles agora mesmo, obrigado pelos links, é exatamente o que eu preciso sobre o assunto C++ ))
E o fato de ser difícil ou não, esse é outro assunto, eu tenho uma compreensão do que é o futuro ))
Eu gosto de tudo )) diferentes abordagens para entender, e então escolher a que faz mais sentido para mim, tudo é simples.

ok, me avise se você precisar de alguma coisa, nós esboçaremos seu euentloop, eu acho ))

 
Реter Konow:
É uma solução de muleta

Não, é um bom filtro de competência.