C语言的sleep,wait,delay函数有什么区别
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/26 17:34:50
C语言的sleep,wait,delay函数有什么区别
C语言的sleep,wait,delay函数有什么区别
C语言的sleep,wait,delay函数有什么区别
sleep 参数指定暂停时间, 单位是 s
delay 参数指定暂停时间, 单位是 ms
所以 sleep(n) == delay(1000*n)
原型:extern void sleep(unsigned int sec);
用法:#include <system.h
功能:短暂延时
说明:延时sec秒举例:// sleep.c
#include <system.h
main(){int c;clrscr();printf("\nHello, world!");sleep(1);clrscr();printf("\nHi, guys");getchar();return 0;}原型:extern void delay(unsigned int msec);
用法:#include <system.h
功能:短暂延时
说明:延时msec*4毫秒举例:// delay.c
#include <system.h
main(){int c;clrscr();printf("\nHello, world!");
delay(250); // 250*4=1000msec=1secclrscr();printf("\nHi, guys");getchar();return 0;}wait(等待子进程中断或结束)相关函数waitpid,fork表头文件#include<sys/types.h
#include<sys/wait.h
定义函数pid_t wait (int * status);函数说明
wait()会暂时停止目前进程的执行,直到有信号来到或子进程结束.如果在调用wait()时子进程已经结束,则wait()会立即返回子进程结束状态
值.子进程的结束状态值会由参数status 返回,而子进程的进程识别码也会一快返回.如果不在意结束状态值,则参数status可以设成NULL.子进程的结束状态值请参考waitpid().
返回值如果执行成功则返回子进程识别码(PID),如果有错误发生则返回-1.失败原因存于errno中.