Ho bisogno di aiuto! Non riesco a risolvere il problema, sto incontrando delle limitazioni hardware - pagina 21

 
elugovoy:
Forse millisecondi? Sui sistemi operativi basati su Windows in microsecondi, la misura non è semplicemente fattibile...

Scusa, solo perché non sai come fare non significa che non sia possibile:

Il codice che Yurich usa, anche nel terminale:

#import "kernel32.dll"
bool QueryPerformanceCounter(ulong &ticks);
bool QueryPerformanceFrequency(ulong &freq);
#import
//---
void OnStart()
{
   ulong t1, t2, st;
   QueryPerformanceFrequency(st);
   if(st>1000)
   {
      st=(ulong)1 e9/st;
      QueryPerformanceCounter(t1);
      Sleep(20);
      QueryPerformanceCounter(t2);
      Print("Tик таймера=",st," нс. // Sleep(20) = ",(t2-t1)*st," нс.");
   }else Print("Таймер высокого разрешения не поддерживается");
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dn553408

Acquiring high-resolution time stamps (Windows)
Acquiring high-resolution time stamps (Windows)
  • msdn.microsoft.com
QPC is independent of and isn't synchronized to any external time reference. To retrieve time stamps that can be synchronized to an external time reference, such as, Coordinated Universal Time (UTC) for use in high-resolution time-of-day measurements, use GetSystemTimePreciseAsFileTime. Time stamps and time-interval measurements are an...
 
Mikalas:

Non sto sottovalutando le abilità e le capacità del terminale, ma

quando un paio di anni fa avevo bisogno di estrarre dati da un file di 1.21Gb, con 21.345.728(!) linee,

Prova di nuovo. In due anni, il linguaggio MQL4 (se fatto in esso) è stato completamente riscritto e il funzionamento dei file completamente riscritto.


Il tempo di ricerca è stato di 35-45 MICROSECUNDI usando il metodo che ho menzionato ,
Quale metodo esattamente?
 
Renat:
Prova di nuovo. In due anni il linguaggio MQL4 (se è stato fatto su di esso) è stato completamente riscritto e il lavoro sui file è stato completamente riscritto.


Quale metodo esattamente?

Il metodo di preparazione dei dati.

Nel mio caso, era così:

 
Mikalas:

Il metodo di preparazione dei dati.

Nel mio caso, era così:

Nel vostro caso basta prendere la MT5 x64 e leggere tutto in memoria in un unico pezzo. Poi una rapida scansione di un solo passaggio verso i bordi giusti per tracciare gli offset.

Nel 2014, un file di qualche concerto non spaventerà nessuno.

 
Renat:

Nel tuo caso basta prendere MT5 x64 e leggere tutto in memoria in un unico pezzo. Poi una rapida scansione di un solo passaggio verso i bordi giusti per tracciare gli offset.

Nel 2014 un file di un concerto non spaventerà nessuno.

Grazie, ma io non ho un problema, komposter ha un problema.

Ti ho già detto come ho risolto il problema (solo una volta, non serve più).

P/S Non riesco nemmeno a trovare il mio codice sorgente nell'archivio per darlo a komposter

come esempio.

 
Mikalas:

Scusa, solo perché non sai come fare non significa che non sia possibile:

Il codice che Yurich usa, anche nel terminale:

http://msdn.microsoft.com/en-us/library/windows/desktop/dn553408

Grazie, davvero non lo sapevo. Uno di questi giorni darò un'occhiata a questo orologio.