Precisa de ajuda! Não consigo resolver o problema, estou atingindo limitações de hardware - página 21

 
elugovoy:
Talvez milissegundos? No SO baseado no Windows em microssegundos, a medição não pode ser feita...

Desculpe, só porque você não sabe como isso não significa que não seja possível:

O código que Yurich usa, mesmo no terminal:

#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:

Eu não estou subestimando as habilidades e capacidades do terminal, mas

quando há alguns anos eu precisava extrair dados de um arquivo de 1.21Gb, com 21.345.728(!) linhas,

Tente novamente. Em dois anos, a linguagem MQL4 (se feita nela) foi completamente reescrita e a operação de arquivo completamente reescrita.


O tempo de busca foi de 35-45 MICROSECUNDS, de acordo com o método que mencionei ,
Qual método exatamente?
 
Renat:
Tente novamente. Em dois anos a linguagem MQL4 (se foi feita sobre ela) foi completamente reescrita e o trabalho de arquivo foi completamente reescrito.


Qual método exatamente?

O método de preparação dos dados.

No meu caso, foi o que me pareceu:

 
Mikalas:

O método de preparação dos dados.

No meu caso, foi o que me pareceu:

No seu caso, basta pegar o MT5 x64 e ler tudo em uma só peça na memória. Em seguida, uma rápida varredura de uma passagem para as bordas direitas para traçar os offsets.

Em 2014, um arquivo de algum show não vai assustar ninguém.

 
Renat:

No seu caso, basta pegar o MT5 x64 e ler tudo na memória em uma só peça. Em seguida, uma rápida varredura de uma passagem para as bordas direitas para traçar os offsets.

Em 2014, um arquivo de um show não assustará ninguém.

Obrigado, mas não tenho nenhum problema, komposter tem um problema.

Já lhe disse como resolvi isso antes (apenas uma vez, não é mais necessário).

P/S Não consigo nem mesmo encontrar meu código fonte no arquivo para dá-lo ao komposter

como um exemplo.

 
Mikalas:

Desculpe, só porque você não sabe como isso não significa que não seja possível:

O código que Yurich usa, mesmo no terminal:

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

Obrigado, realmente não sabia. Darei uma olhada neste relógio um destes dias.
Razão: