助けてください問題が解決できない、ハードウェアの限界にぶつかる - ページ 21

 
elugovoy:
ミリ秒くらいかな?WindowsベースのOSでマイクロ秒単位だと、どうしても計測できない...。

すみません、方法がわからないからと言って、不可能というわけではありません。

ゆりっちが使うコード、端末でも。

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

端末の能力や性能を控えめに言っているわけではありませんが

数年前、1.21Gbのファイルから21,345,728行(!)のデータを抽出する必要があったとき。

もう一度試してみてください。2年の間に、MQL4(で行う場合)の言語は完全に書き直され、ファイル操作も完全に書き直されました。


先ほどの 方法では、検索時間は35〜45マイクロ秒でした。
具体的にはどのような方法ですか?
 
Renat:
もう一度試してみてください。2年の間にMQL4言語は(その上で行われたのであれば)完全に書き直され、ファイル作業も完全に書き直されたのです。


具体的にはどのような方法ですか?

データを作成する方法です。

私の場合、こんな感じでした。

 
Mikalas:

データを作成する方法です。

私の場合、こんな感じでした。

あなたの場合は、MT5 x64を持っていって、全部を一度にメモリに読み込むだけです。その後、右端までワンパスでスキャンし、オフセットをプロットします。

2014年、どこかのギガのファイルでは、誰も怖がらない。

 
Renat:

あなたの場合は、MT5 x64を持っていって、全部を一度にメモリに読み込めばいいのです。その後、右端までワンパスでスキャンし、オフセットをプロットします。

2014年、ギガのファイルでは誰も怖がらない。

ありがとうございます。しかし、私には問題がなく、komposterには問題があります。

以前、私が解決した方法をお話しました(一度だけです、もう必要ありません)。

追記:komposterに渡すためのソースコードもアーカイブの中から見つかりません。

を例として挙げます。

 
Mikalas:

すみません、方法がわからないからと言って、不可能というわけではありません。

ゆりっちが使うコード、端末でも。

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

ありがとうございます、本当に知りませんでした。先日の時計も見てみますね。