阅读量:0
usleep()
是一个用于在 Linux 和 Unix 系统中暂停程序执行一段时间的函数
- 包含头文件:确保在代码中包含
<unistd.h>
头文件,因为这是usleep()
函数的声明所在。
#include <unistd.h>
- 使用
usleep()
函数:调用usleep()
函数并传递一个表示要暂停的微秒数的参数。例如,要暂停 500 毫秒,可以将参数设置为500000
。
usleep(500000);
- 错误处理:
usleep()
函数可能会返回 -1,表示出现错误。因此,建议检查函数的返回值并相应地处理错误。
if (usleep(500000) == -1) { perror("usleep"); }
- 注意功能差异:
usleep()
函数在不同的操作系统上可能有不同的行为。在某些系统上,usleep()
可能不会提供高精度的延迟。在这种情况下,可以考虑使用其他方法,如nanosleep()
。
下面是一个完整的示例程序,演示了如何在 Ubuntu 中使用 usleep()
:
#include<stdio.h> #include <unistd.h> int main() { printf("Starting...\n"); usleep(500000); // Sleep for 500 milliseconds printf("Finished sleeping.\n"); return 0; }
编译并运行此程序,你将看到 “Starting…” 和 “Finished sleeping.” 之间有一个 500 毫秒的暂停。