問題描寫
編寫代碼用于實(shí)現(xiàn)程序的休眠,例如,如果要求程序休眠10秒鐘,那末在這10秒內(nèi)程序要1直等待,而不履行任何操作。
解決思路
在Linux下,有1個(gè)select函數(shù)用于實(shí)現(xiàn)進(jìn)程的阻塞,該函數(shù)的原型是:
int select(int n, fd_set *readfds,fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);
可以用該函數(shù)來實(shí)現(xiàn)程序的休眠。
C代碼實(shí)現(xiàn)
程序運(yùn)行結(jié)果
在Linux下使用“gcc-g -o Sleep Sleep.c”命令對(duì)程序進(jìn)行編譯,成功以后,履行“Sleep”命令,結(jié)果以下:
Begin time: 2015.04.3013:36:40
End time: 2015.04.30 13:36:50
可見,程序在“2015.04.30 13:36:40”和“2015.04.30 13:36:50”之間休眠了10秒。
-------------------------------
本人微信公眾號(hào):zhouzxi,請(qǐng)掃描以下2維碼: