一、Windows
头文件:
#include<windows.h>
Sleep()
函数原型
Sleep(unsigned long);
其中,Sleep()里面的单位,是以毫秒为单位
二、linux
头文件:
#include <unistd.h>
1. sleep
函数:
unsigned int sleep(unsigned int seconds);
参数:
-
seconds:单位为秒
-
返回值:若进程/线程挂起到参数所指定的时间则返回0,若有信号中断则返回剩余秒数。
函数说明:
sleep()会令目前的进程暂停, 直到达到参数seconds 所指定的时间, 或是被信号所中断.
2.usleep()
void usleep(unsigned long usec);
单位为微秒
三、统一的封装
#if defined(__linux__)
// Linux系统
#include<unistd.h>
#elif defined(_WIN32)
// Windows系统
#include<windows.h>
#endif
/*单位:秒*/
void my_p_sleep(int time) {
#if defined(__linux__)
// Linux系统
sleep(time);
#elif defined(_WIN32)
// Windows系统
Sleep((time*1000));
#endif
}
/*单位:毫秒*/
void my_m_sleep(int time) {
#if defined(__linux__)
// Linux系统
usleep(time*1000);
#elif defined(_WIN32)
// Windows系统
Sleep(time);
#endif
}