Errori, bug, domande - pagina 1538
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Cari sviluppatori.
Edificio 1281 MT5 Windows 7 64
ha avuto un aggiornamento oggi
Il processo sembra essere infinito :-)
Dopo il riavvio vuole ripartire di nuovo e così via.
2016.03.30 10:33:31.903 Rete '3143179': il trading è stato abilitato - modalità netting
2016.03.30 10:33:31.903 Rete '3143179': terminale sincronizzato con MetaQuotes Software Corp.
2016.03.30 10:33:31.829 Rete '3143179': precedente autorizzazione riuscita eseguita il 2016.03.30 10:33:05
2016.03.30 10:33:31.829 Rete '3143179': autorizzato su MetaQuotes-Demo via Access Point EU Frankfurt (ping: 70.19 ms)
2016.03.30 10:33:31.759 LiveUpdate nuova build 1286 del terminale (IDE: 1286, Tester: 1286) è disponibile
Cari sviluppatori.
Edificio 1281 MT5 Windows 7 64
ha avuto un aggiornamento oggi
Il processo sembra essere infinito :-)
dopo il riavvio vuole riavviare di nuovo e così via
2016.03.30 10:33:31.903 Rete '3143179': il trading è stato abilitato - modalità netting
2016.03.30 10:33:31.903 Rete '3143179': terminale sincronizzato con MetaQuotes Software Corp.
2016.03.30 10:33:31.829 Rete '3143179': autorizzato su MetaQuotes-Demo via Access Point EU Frankfurt (ping: 70.19 ms)
2016.03.30 10:33:31.759 LiveUpdate nuova build 1286 del terminale (IDE: 1286, Tester: 1286) è disponibile
È vero che quando un indicatore viene rimosso manualmente mentre OnCalculate è in esecuzione, OnDeinit viene eseguito immediatamente, a volte contemporaneamente a OnCalculate, che non è ancora finito?
Questo sembra essere il caso. Una classe ha un array dinamico di istanze di un'altra classe che viene rilasciato nel distruttore.
Il distruttore è chiamato solo in OnDeinit attraverso la cancellazione.
Così, quando lo deseleziono durante OnCalculate, l'array di cui sopra inizia a cancellarsi, come se qualcuno chiamasse il distruttore. Questo qualcuno - OnDeinit.
Come risultato, otterrò NULL invece di istanze della classe.
Ho provato a usare _StopFlag in OnCalculate, ma non aiuta.
Come fare in modo che OnDeinit venga eseguito non durante l'esecuzione di OnCalculate ma dopo?
Se rimuovo la cancellazione da OnDeinit smetto di ottenere NULL. Ma nel registro ottengo una memoria logicamente fuoriuscita. Quindi è certamente OnDeinit. Ho provato a metterci dentro Sleep. Ma sembra che Sleep non funzioni negli indicatori. Ho anche provato così
L'indicatore sembra ignorare anche questo.
Uso macro predefinite quando faccio il debug. È anche possibile scoprire comodamente chi ha chiamato la funzione/metodo senza passargli il relativo parametro?
Questo sembra essere il caso. La classe ha un array dinamico di istanze di un'altra classe, che viene rilasciato nel distruttore.
Il distruttore è chiamato solo in OnDeinit attraverso la cancellazione.
Così, quando lo deseleziono durante OnCalculate, l'array di cui sopra inizia a cancellarsi, come se qualcuno chiamasse il distruttore. Questo qualcuno - OnDeinit.
Come risultato, otterrò NULL invece di istanze della classe.
Ho provato a usare _StopFlag in OnCalculate, ma non aiuta.
Come fare in modo che OnDeinit venga eseguito non durante l'esecuzione di OnCalculate ma dopo?
Se rimuovo la cancellazione da OnDeinit smetto di ottenere NULL. Ma nel registro ottengo una memoria logicamente fuoriuscita. Quindi è certamente OnDeinit. Ho provato a metterci dentro Sleep. Ma sembra che Sleep non funzioni negli indicatori. Ho anche provato così
L'indicatore sembra ignorare anche questo.
Per favore aprite una richiesta a servicedesk e datemi il codice della funzione OnDeinit
Potete consigliarmi come far funzionare artificialmente OnCalculate per molto tempo? È un problema di slittamento.
Sta giocando solo in indicatori complessi (molti calcoli). Quando rimuovo i calcoli - tutto va bene, poiché OnCalculate viene eseguito quasi istantaneamente.
Come posso fare in modo che OnDeinit venga eseguito dopo OnCalculate invece che durante?
Potete consigliarmi come far funzionare artificialmente OnCalculate per molto tempo? È un problema di slittamento.
Sta giocando solo in indicatori complessi (molti calcoli). Quando rimuovo i calcoli - tutto va bene, perché OnCalculate viene eseguito quasi istantaneamente.