Linux系统编程——延时函数

编程知识 行业动态 更新时间:2024-06-13 00:21:00

1. 延时函数简介

Linux 中常用的延时函数有 sleepusleepndelayudelaymdelay等。

  1. Linux 系统编程下用到的延时函数在头文件
#include <unistd.h>

包括 sleepusleep

  1. Linux 内核中用到的延时函数在头文件
#include <linux/delay.h>

包括 ndelayudelaymdelay

2. sleep 函数简介

函数 sleep 是秒延时,函数原型如下:

unsigned int sleep(unsigned int seconds);

例如sleep(1),即延时一秒。返回无符号的整形数值,如果延时成功则返回 0,如果延时过程中被打断,则返回剩余的秒数。例如 sleep(5),返回值为 3,那么实际延时就是 5 - 3 = 2 秒。

3. usleep 函数简介

函数 usleep 是微秒延时,函数原型如下:

int usleep(useconds_t usec);

usec 需要小于 1000,000。usleep(10) 表示延时10微妙。延时成功则返回0,失败则返回 -1

4. delay 系列简介

函数 delay 是在 Linux 内核 中使用的,也是在 Linux 驱动 中会用到。

函数 mdelay 毫秒延时,原型如下:

void mdelay(unsigned long msecs);

函数 udelay 微秒延时,原型如下:

void udelay(unsigned long usecs);

函数 ndelay 纳秒延时,原型如下:

void ndelay(unsigned long nsecs);

5. sleep 和 usleep 例程

#include <stdio.h>
#include <unistd.h>

int main(void) {
    int i = 10;
    while(i--) {
        sleep(2);
        printf("sleep 2s!\n");
        usleep(1000000);
        printf("sleep 1000000us!\n");
    }
    return 0;
}

更多推荐

Linux系统编程——延时函数

本文发布于:2023-03-30 23:40:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/d39065f2f0f20083657da033aacaf893.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:函数   系统   Linux

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!