Errori, bug, domande - pagina 1903

 
Vladimir Gribachev:

ha appena aperto il terminale MT4 in questo sviluppo ed è stato scioccato

tutti i conti sono fuori uso - ma è risolvibile

Ho perso tutti i codici del MetaEditor, e ieri non sono riuscito a sincronizzare un paio di progetti con il repository.

un giorno di lavoro giù per lo scarico.

Può commentare la situazione?


è lo stesso sull'altro terminale.
 
In MqlRates il campo spread è lo spread minimo, massimo o medio per barra? La documentazione, come al solito, riposa.
 
Vladimir Gribachev:

Tutti i codici del Metadvisor sono spariti, e non ho ancora sincronizzato un paio di progetti con il repository di ieri.

Molto probabilmente non manca.

Se gli account sono spariti, quasi certamente è stata creata una nuova cartella in app data/roaming per i dati del terminale, basta guardare in tutte le cartelle.

 
-Aleks-:

MT4 ha iniziato a bloccarsi frequentemente con un errore di vento (dopo un aggiornamento?) - mai visto prima, anche se non c'era abbastanza memoria - si è solo incasinato nei calcoli. Dove cercare il problema?

Scrivi a servicedex, troveremo una soluzione.
 

È sorta una domanda: come posso scoprire quante istanze della classe ci sono?

Il motivo: c'è un ciclo all'interno della classe, all'interno del quale è necessario fare solo alcuni calcoli se c'è una sola istanza della classe, nelle altre istanze è necessario saltare tali calcoli per evitare di duplicarli e fare calcoli inutili (sono stati fatti nella primissima istanza della classe e sono condivisi - disponibili al di fuori della classe)

 
Artyom Trishkin:

È sorta una domanda: come posso scoprire quante istanze della classe ci sono?

Il motivo: c'è un ciclo all'interno della classe, all'interno del quale è necessario fare solo alcuni calcoli se c'è una sola istanza della classe, nelle altre istanze è necessario saltare tali calcoli per evitare di duplicarli e fare calcoli inutili (sono stati fatti nella primissima istanza della classe e sono condivisi - disponibili al di fuori della classe)


Descrivere il contatore statico di oggetti nella classe. Nel costruttore - aumenta, nel distruttore - diminuisce.
 
Artyom Trishkin:

La ragione è questa: c'è un ciclo all'interno della classe, all'interno del quale è necessario fare solo alcuni calcoli se c'è una sola istanza della classe, in altre istanze è necessario saltare tali calcoli per evitare di duplicarli e fare calcoli inutili (sono stati fatti nella primissima istanza della classe e sono condivisi - disponibili al di fuori della classe)

Perché non usare un riferimento a una singola istanza della classe?

E all'interno - calcolare (quando appaiono nuovi dati) o restituire il risultato finito.

 
Artyom Trishkin:

È sorta una domanda: come posso scoprire quante istanze della classe ci sono?

Il motivo: c'è un ciclo all'interno della classe, all'interno del quale è necessario fare solo alcuni calcoli se c'è una sola istanza della classe, in altre istanze è necessario saltare tali calcoli per evitare di duplicarli e fare calcoli inutili (sono stati fatti nella primissima istanza della classe e sono condivisi - disponibili al di fuori della classe)


Ancora meglio, tutti i calcoli unici dovrebbero essere spostati in una classe separata e farne un singleton.
 
Stanislav Korotky:

Ancora meglio è mettere tutti i calcoli unici in una classe separata e farne un singleton.

Il calcolo non è unico - se c'è una sola istanza della classe allora il calcolo dovrebbe esserlo, se ci sono più istanze allora perché duplicare lo stesso calcolo in altre istanze della stessa classe? Occupa risorse.

Allo stesso tempo, non è ottimale fare un ciclo più lungo in una classe genitore per calcolare gli stessi dati (due cicli lunghi), e la classe figlia non sarà autosufficiente.

 
Andrey Khatimlianskii:

Perché non usare un riferimento a una singola istanza della classe?

E all'interno - calcolare (quando appaiono nuovi dati) o restituire il risultato finito.

Andrey, puoi essere un po' più specifico? Non capisco bene.