Tôi đã viết một ứng dụng bảng điều khiển nhỏ và tôi muốn tạm dừng trong một số giây nhất định trước khi chu kỳ (một lúc) bắt đầu lại.Chờ/Tạm dừng số giây trong C
Tôi đang làm việc trên hệ điều hành Windows.
Tôi đã viết một ứng dụng bảng điều khiển nhỏ và tôi muốn tạm dừng trong một số giây nhất định trước khi chu kỳ (một lúc) bắt đầu lại.Chờ/Tạm dừng số giây trong C
Tôi đang làm việc trên hệ điều hành Windows.
Trên Windows, chức năng để thực hiện việc này là Sleep
, có số tiền là mili giây bạn muốn ngủ. Để sử dụng Sleep
, bạn cần bao gồm windows.h
.
On POSIX-Systems, chức năng sleep
(từ unistd.h
) thực hiện việc này:
unsigned int sleep(unsigned int seconds);
DESCRIPTION
sleep() makes the calling thread sleep until
seconds seconds have elapsed or a signal arrives which is not ignored.
Nếu nó bị gián đoạn bởi một tín hiệu, thời gian còn lại để ngủ được trả về. Nếu bạn sử dụng tín hiệu, một giải pháp mạnh mẽ hơn sẽ là:
unsigned int time_to_sleep = 10; // sleep 10 seconds
while(time_to_sleep)
time_to_sleep = sleep(time_to_sleep);
Đây là khóa học giả định xử lý tín hiệu của bạn chỉ mất một lượng thời gian không đáng kể. (Nếu không, điều này sẽ làm chậm trễ chương trình chính dài hơn dự định)
dễ dàng:
while(true)
{
// your stuff
sleep(10); // sleeping for 10 seconds
};
Việc vượt qua đối số 10 sẽ không cung cấp cho bạn 10 giây. – nicomp
Tôi không nghĩ rằng 'giây' là một thẻ rất hữu ích. –