この関数は、このExpert Advisorまたはインジケーターに対して1秒未満の間隔でタイマーイベントを生成する必要があることをクライアント端末に示します。
bool EventSetMillisecondTimer (int milliseconds // ミリ秒数 ); |
パラメーター
ミリ秒
[in]タイマーイベントの頻度を定義するミリ秒数。
戻り値
正常に実行された場合はtrue、それ以外の場合はfalseを返します。エラーコードを受け取るには、GetLastError()関数を呼び出す必要があります。
注意
この機能は、高解像度のタイマーが必要な場合のために設計されています。つまり、タイマーイベントは1秒に1回よりも頻繁に受信する必要があります。数秒の期間を持つ従来のタイマーで十分な場合は、EventSetTimer()を使用します。
通常、この関数はOnInit()関数またはクラスconstructorから呼び出す必要があります。タイマーからのイベントを処理するには、Expert AdvisorまたはインジケーターにOnTimer()関数が必要です。
各エキスパートアドバイザーと各インジケーターは、このタイマーからのみイベントを受信する独自のタイマーで動作します。mql4アプリケーションのシャットダウン中、タイマーは作成されたがEventKillTimer()関数によって無効にされていない場合、強制的に破棄されます。
プログラムごとに起動できるタイマーは1つだけです。各mql4アプリケーションおよびチャートには、新しく到着したすべてのイベントが配置される独自のイベントキューがあります。キューに既にTimerイベントが含まれているか、このイベントが処理段階にある場合、新しいTimerイベントはmql4アプリケーションキューに追加されません。