Sleep
Hàm tạm dừng thực thi của Expert Advisor hoặc script hiện tại trong một khoảng thời gian được chỉ định.
cpp
void Sleep(
int milliseconds // khoảng thời gian
);
1
2
3
2
3
Tham số
milliseconds
[truyền vào] Khoảng thời gian trì hoãn tính bằng mili giây.
Giá trị trả về
Không có giá trị trả về.
Ghi chú
Hàm Sleep()
không thể được gọi trong các chỉ báo tùy chỉnh, vì các chỉ báo được thực thi trong luồng giao diện và không được làm chậm luồng này. Hàm có cơ chế kiểm tra tích hợp cờ dừng của EA mỗi 0.1 giây.
Ví dụ:
cpp
//+------------------------------------------------------------------+
//| Hàm khởi động chương trình script |
//+------------------------------------------------------------------+
void OnStart()
{
//--- hiển thị đếm ngược từ 10 đến 1 trong phần bình luận trên biểu đồ
for(int i=10; i>0 && !IsStopped(); i--)
{
Comment(StringFormat("Chờ %u giây",i));
Sleep(1000);
}
//--- ghi một đoạn văn bản trong bình luận "đang đến" mô tả mục đích của script
string text="Đây là một bài kiểm tra thể hiện cách hàm Sleep() hoạt động";
string mess="";
for(int i=0; i<(int)text.Length(); i++)
{
mess+=ShortToString(text.GetChar(i));
Sleep(100);
Comment(mess);
}
//--- nói lời tạm biệt...
Sleep(1000);
for(int i=0; i<6; i++)
{
mess=(i % 2 == 0 ? "" : " Bye!");
Comment(mess);
Sleep(300);
}
//--- xóa văn bản trên biểu đồ
Comment("");
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31