我试图一次写到终端一行,但它只打印整个东西而不睡觉.如果我使用sleep(1)它会起作用.我只是不明白nanosleep是如何工作的?
void
display_all(int fdin, int fdout)
{
struct timespec tm1,tm2;
tm1.tv_sec = 0;
tm1.tv_nsec = 1000000000L;
while (display_line(fdin, fdout) == 80)
{
nanosleep(&tm1,&tm2);
}
}
Run Code Online (Sandbox Code Playgroud)
display_line使用函数write写入STDOUT.