在Linux系统中,可以使用nanosleep
函数来实现定时任务。这个函数可以让程序暂停指定的时间,以毫秒和纳秒为单位。
下面是一个简单的示例代码,演示如何使用nanosleep
函数实现定时任务:
#include#include int main() { struct timespec ts; ts.tv_sec = 1; // 设置等待1秒 ts.tv_nsec = 0; // 设置纳秒部分为0 while (1) { // 输出当前时间 time_t now = time(NULL); printf("Current time: %s", ctime(&now)); // 等待1秒 if (nanosleep(&ts, NULL) == -1) { perror("nanosleep"); return 1; } } return 0; }
在这个示例中,程序会输出当前时间,然后暂停1秒,再输出下一个时间,如此循环下去。可以根据实际需求调整等待时间。
编译并运行这个程序,你会看到每隔1秒输出一次当前时间。这样就实现了一个简单的定时任务。