linux延时
又是一个缓冲的问题,看一下我刚刚回答的这个问题,也是由于缓冲导致的。
http://..com/question/322596558.html
和 usleep 无关,你的问题只要改成即可:
while(i<100)
{
printf("ok");
fflush(stdout);
usleep(10000);
i++;
}
B. 在linux驱动中实现纳秒的延时用哪个函数
楼主你好,我现在也出现了一个同样的问题,我用9260通过SPI来控制一个芯片,那芯片工作频率1M-5M,现在也是在调试驱动程序不成功,用分析仪检测用ndelay延时误差非常大,楼主请问下你的问题解决了吗?
C. linux在两个线程之间加延时起到什么作用
主要是考虑到时间片的问题吧,不延时的话,某个线程可能会一直占用时间片
D. 在linux下,想用sleep函数实现延时五秒,应该怎么设参数
使用权限 : 所有使用者
使用方式 : sleep [--help] [--version] number[smhd]
说明 : sleep 可以用来将目前动作延迟一段时间
参数说明 :
--help : 显示辅助讯息
--version : 显示版本编号
number : 时间长度,后面可接 s、m、h 或 d
其中 s 为秒,m 为 分钟,h 为小时,d 为日数
例子 :
显示目前时间后延迟 1 分钟,之后再次显示时间 :
date;sleep 1m;date
这个命令更多应用于shell脚本编程里和程序里
如下面的一段程序:
应用程序:
复制代码
代码如下:
#include <syswait.h>
usleep(n) //n微秒
Sleep(n)//n毫秒
sleep(n)//n秒
驱动程序:
#include <linux/delay.h>
mdelay(n) //milliseconds 其实现
#ifdef notdef
#define mdelay(n) (\
{unsigned long msec=(n); while (msec--) udelay(1000);})
#else
#define mdelay(n) (\
(__builtin_constant_p(n) && (n)<=MAX_UDELAY_MS) ? udelay((n)*1000) : \
({unsigned long msec=(n); while (msec--) udelay(1000);}))
#endif
调用asm/delay.h的udelay,udelay应该是纳秒级的延时
Dos:
sleep(1); //停留1秒
delay(100); //停留100毫秒
Windows:
Sleep(100); //停留100毫秒
Linux:
sleep(1); //停留1秒
usleep(1000); //停留1毫秒
每一个平台不太一样,最好自己定义一套跨平台的宏进行控制
秒还是微秒?关于延时函数sleep()
因为要写一段代码,需要用到sleep()函数,在我印象中,sleep(10)好像是休眠10微秒,结果却是休眠了10秒(在Linux下)。觉得很奇怪,因为头儿也记得好像是微秒为单位的。所以就查了一下。
原来linux下的sleep函数原型为:
unsigned int sleep(unsigned int seconds);
而MFC中的Sleep函数原型为:
void Sleep(DWORD dwMilliseconds);
也就是说,Linux下(使用的gcc的库),sleep()函数是以秒为单位的,sleep(1);就是休眠1秒。而MFC下的sleep()函数是以微秒为单位的,sleep(1000);才是休眠1秒。原来如此啊。而如果在Linux下也用微妙为单位休眠,可以使用线程休眠函数:void usleep(unsigned long usec);当然,使用的时候别忘记#include <system.h>哦。
另外值得一提的是,linux下还有个delay()函数,原型为extern void delay(unsigned int msec);它可以延时msec*4毫秒,也就是如果想延时一秒钟的话,可以这么用 delay(250);
E. linux下怎样在for循环中设置延迟,也就是每次循环都要暂停一段时间
调用函数sleep(), 精确到秒
或者usleep(),精确到微秒
或者nanosleep(),精确到纳秒
F. linux t async 延时多久
能昰
Linux套免费使用自由传播类Unix操作系统基于POSIXUNIX用户、任务、支持线程CPU操作系统能运行主要UNIX工具软件、应用程序网络协议支持32位64位硬件Linux继承Unix网络核设计思想性能稳定用户网络操作系统
Linux操作系统诞于1991 10 月5 (第式向外公布间)Linux存着许同Linux版本都使用Linux内核Linux安装各种计算机硬件设备比手机、平板电脑、路由器、视频游戏控制台、台式计算机、型机超级计算机
严格讲Linux词本身表示Linux内核实际已经习惯用Linux形容整基于Linux内核并且使用GNU 工程各种工具数据库操作系统
鉴于题主问linux昰麼进程应该昰windows系统吧同按键盘ctrl+Alt+del键打资源管理器后选择想要查看程序右键选择打文件位置昰没程序签名未知程序半昰病毒木马
G. linux计划任务如何实现延时执行脚本,求简洁实例
两个方法:
1)crontab中的时间设定最小可以到分钟,如果你的延时是分钟级别的,直接放大crontab中的分钟设定即可。
2)修改脚本,在脚本开头(当然要在shell声明语句如#!/bin/bash之后)加usleep(微秒级)或sleep命令(秒级),也可以实现延时。
H. linux定时器和延时工作队列的区别
工作队列中是即将要调度到的任务队列,等待队列是暂时被挂起的任务队列,或者有些任务无事可做休眠状态的任务,它们会在某些条件触发时恢复换入工作队列并进入执行状态,同样在工作队列中的任务在某个时刻也可以被换入到等待队列中
I. 在linux驱动中实现纳秒的延时用哪个函数
如果不关中断,在进程上下文上可能会被中断,从而进入中断处理程序,再被内核切换出来时,会重新调度进程。如果进程被调度出去则,时延很可能超过XXX纳秒。
J. Linux中ping的延迟是什么
ping包在网络中的来回时间