EventSetMillisecondTimer

이 기능은 이 엑스퍼트 어드바이저 또는 지표에 대해 타이머 이벤트를 1초 미만읜 간격으로 생성해야 함을 클라이언트 터미널에 나타냅니다.

bool  EventSetMillisecondTimer(
   int  milliseconds      // 밀리초의 수
   );

매개변수

milliseconds

[in]  타이머 이벤트의 빈도를 정의하는 밀리초.

값 반환

실행에 성공하면 true를, 그렇지 않으면 false를 반환합니다. 오류 코드를 받으려면 GetLastError() 함수를 호출해야 합니다.

주의

이 기능은 타이머가 필요한 경우에 맞게 고안되었습니다. 즉, 타이머 이벤트는 초당 1회보다 더 자주 수신해야 합니다. 주기가 1초 이상인 일반 타이머로 충분하면 EventSetTimer()를 사용하십시오.

일반적으로 타이머 시간이 줄어들면 타이머 이벤트 처리기가 더 자주 호출되므로 테스트 시간이 늘어납니다. 실시간 모드에서 작업하는 경우 하드웨어 제한으로 인해 타이머 이벤트가 10~16 밀리초 내에 1회 이상 생성되지 않습니다.

일반적으로 이 기능은 OnInit() 함수 또는 클래스 생성자에서 호출해야 합니다. 타이머에서 발생하는 이벤트를 처리하려면 엑스퍼트 어드바이저 또는 지표에 OnTimer() 기능이 있어야 합니다.

각 엑스퍼트 어드바이저와 지표는 이 타이머에서만 이벤트를 수신하는 자체 타이머로 작동합니다. mql5 애플리케이션 종료 중에 타이머가 생성되었지만 EventKillTimer() 기능으로 비활성화 되지 않은 경우 타이머가 강제로 폐기됩니다.

각 프로그램에 대해 타이머를 하나만 시작할 수 있습니다. 각 mql5 애플리케이션 및 차트에는 새로 도착한 모든 이벤트가 배치되는 자체 이벤트 대기열이 있습니다. 대기열에 이미 타이머 이벤트가 포함되어 있거나 이벤트 처리 단계에 있는 경우 새 타이머 이벤트가 mql5 애플리케이션 대기열에 추가되지 않습니다.