程序休眠问题的C代码实现

简介: 问题描述编写代码用于实现程序的休眠,例如,如果要求程序休眠10秒钟,那么在这10秒内程序要一直等待,而不执行任何操作。 解决思路在Linux下,有一个select函数用于实现进程的阻塞,该函数的原型是:int select(int n, fd_set *readfds,fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);可以用该函数来实现程序的休眠。

问题描述

编写代码用于实现程序的休眠,例如,如果要求程序休眠10秒钟,那么在这10秒内程序要一直等待,而不执行任何操作。

 

解决思路

在Linux下,有一个select函数用于实现进程的阻塞,该函数的原型是:

int select(int n, fd_set *readfds,fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);

可以用该函数来实现程序的休眠。

 

C代码实现

/**********************************************************************
* 版权所有 (C)2015, Zhou Zhaoxiong。
*
* 文件名称:Sleep.c
* 文件标识:无
* 内容摘要:演示休眠程序的编写及调用
* 其它说明:无
* 当前版本:V1.0
* 作    者:Zhou Zhaoxiong
* 完成日期:20150430
*
**********************************************************************/
#include 
  
   
#include 
   
   
    
#include 
    
    
   
   
  
  

程序运行结果

在Linux下使用“gcc-g -o Sleep Sleep.c”命令对程序进行编译,成功之后,执行“Sleep”命令,结果如下:

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秒。

 

 

-------------------------------

本人微信公众号:zhouzxi,请扫描以下二维码:

 

目录
相关文章
|
8月前
|
C语言 Windows
【C语言】实现程序的暂停
【C语言】实现程序的暂停
272 0
|
1月前
|
消息中间件 Unix Linux
【C语言】进程和线程详解
在现代操作系统中,进程和线程是实现并发执行的两种主要方式。理解它们的区别和各自的应用场景对于编写高效的并发程序至关重要。
62 6
|
4月前
|
API
MASM32编程用两种方法运行外部程序并等待其结束
MASM32编程用两种方法运行外部程序并等待其结束
|
6月前
|
安全 开发者
LabVIEW程序退出后线程仍在运行问题
LabVIEW程序退出后线程仍在运行问题
69 2
|
8月前
|
开发工具 C语言
主程序、子程序链接、子程序的编译
【5月更文挑战第14天】主程序、子程序链接、子程序的编译。
37 1
编写使用中断的按键驱动程序
编写使用中断的按键驱动程序
118 0
9、IAR中断向量表与中断服务函数的编写
9、IAR中断向量表与中断服务函数的编写
263 0
|
安全
多线程基础篇(2)——理解中断
推荐书籍《Java并发编程的艺术》《Java编程思想》《Java核心技术》
3267 0