Servizi. Sono già in funzione? - pagina 6

 
Ilya Malev:
Quindi, questi script non sono legati a un grafico specifico, che sono chiamati da OnStart una volta all'avvio del terminale ed eseguiti in un thread separato?

Sì.

E il loro stato di funzionamento viene salvato quando il terminale viene riavviato e vengono avviati automaticamente.

 
MetaQuotes Software Corp.:

Sì.

E il loro stato di funzionamento viene salvato quando il terminale viene riavviato e si avviano automaticamente.

Viene salvato quando lo stato cambia o quando il terminale viene chiuso?

Cioè dopo il crash il servizio sarà nello stesso stato in cui era al momento del crash o nell'ultimo stato impostato dall'utente?

 
Andrey Khatimlianskii:

Viene salvato quando lo stato cambia o quando il terminale viene chiuso?

Cioè, dopo un crash, il servizio sarà nello stesso stato in cui era al momento del crash, o nell'ultimo stato impostato dall'utente?

È stato impostato dall'utente.

Se il servizio è stato avviato, verrà eseguito per sempre finché l'utente non lo ferma.

Provate voi stessi, la funzionalità è disponibile da molto tempo.

 
Vladimir Pastushak:

I progetti non sono molto user-friendly, non c'è modo di ordinare tutto in cartelle. E non c'è modo di sviluppare codice per due piattaforme contemporaneamente.

Forse non capisco qualcosa...

Beh, ciao, semplicemente non sai come prepararli! È ideale per scrivere programmi multipiattaforma nei progetti MT5, cosa che ho fatto per molto tempo. Ora, non hai nemmeno bisogno di copiare EA_nome.mq5 in EA_nome.mq4 per compilarlo in EA_nome.ex5 e EA_nome.ex4, hai solo bisogno di cambiare la piattaforma nel file di progetto (per esempio, nel mio) \MQL5\Progetti Condivisi\ScalpHunter2\ScalpHunter2.mqproj nell'angolo superiore sinistro del modulo. Dovresti usare solo progetti condivisi.

E i vecchi progetti, come \MQL5\Projects\ScalpHunter\ devono essere ricreati. Ma ci vogliono 10 minuti, non è niente.

 
MetaQuotes Software Corp.:

Sì.

E il loro stato di funzionamento viene salvato al riavvio di Termala e si avviano automaticamente.

Lasciatemi aggiungere qualcosa. Windows ha avuto a lungo un tale tipo di programma - i servizi. Ho capito che i servizi in MT5 seguono un'ideologia simile, solo più semplice. Ho scritto servizi in Windows, tutto lì è più complicato nello sviluppo e nel dispositivo.

 
Renat Fatkhullin:

I servizi lavorano tutto il tempo, comunicando con il terminale tramite una speciale coda di compiti. Riveleremo i compiti più tardi.

I servizi non sono esperti o gestori di eventi grafico/timer/prezzo. I modelli di eventi non sono necessari per i processi continui, il cui scopo è non interrompere mai e non dipendere da conti/server.

Abbiamo deliberatamente separato i servizi in modo funzionale dagli esperti, in modo che la gente non crei dei Frankenstein. I servizi hanno il loro campo di applicazione.

Renate, capisco che c'è ancora del lavoro da fare, come i compiti. Poi una domanda. Voglio fare un servizio e metterci dentro dei calcoli pesanti, per esempio filtrare i dati di tick.

Come trasmettere correttamente i risultati dei calcoli all'Expert Advisor? Non ci sono ancora eventi? Sto appena iniziando a lavorare con i servizi, ci sono molte incertezze.

 
Alexey Volchanskiy:

Renat, capisco che non tutto è stato ancora fatto, come i compiti. Poi una domanda. Voglio fare un servizio e metterci dentro dei calcoli pesanti, per esempio filtrare i dati dei tick.

Cometrasmettere correttamentei risultati del calcolo all'Expert Advisor? Non ci sono ancora eventi? Ho appena iniziato a lavorare con i servizi, ci sono molte incognite.

Questa domanda interessa anche me.

Come posso trasferirli?

 
Vitaly Muzichenko:

Come trasmetterlo?

EcentChartCustom+Resource.

 
fxsaber:

EcentChartCustom+Resource.

E il contrario?

 
Stanislav Korotky:

E nella direzione opposta?

Non so perché sia ancora necessario un feedback. Ma il trasferimento di dati tramite nuove risorse al servizio non è un problema.