如何在C语言中使时间暂停几毫秒或者微秒

six_shen_peng 2007-03-05 09:19:37
如何在C语言中使时间暂停几毫秒或者微秒
...全文
3797 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
victor_cui 2007-03-13
  • 打赏
  • 举报
回复
上面所说的等等虽然可以填一个毫秒或者一下数量级的参数,但是停留的时间并不等同于设定的值,基本上只能到10-15毫秒的精度,要实现更精确的停留在linux下可以选择naosleep,其他平台只有想办法自己实现了
egxsun 2007-03-13
  • 打赏
  • 举报
回复
或者用select函数+timeval结构也可以(最多精确到微秒),

或者用pselect函数+timespec(可以精确到纳秒,足够精确了!)

-------------------------------------------------------
在linux下没有那么精确吧
qhgary 2007-03-09
  • 打赏
  • 举报
回复
WINDOWS下Sleep函数与LINUX下sleep函数区别
VC++中的Sleep函数原型为:

void Sleep(
DWORD dwMilliseconds
);

linux下的sleep函数原型为:

unsigned int sleep(unsigned int seconds);

MFC中的是微秒,linux下的是秒。linux下用微秒的线程休眠函数是:

void usleep(unsigned long usec);
int usleep(unsigned long usec); /* SUSv2 */

或者用select函数+timeval结构也可以(最多精确到微秒),

或者用pselect函数+timespec(可以精确到纳秒,足够精确了!)
whoho 2007-03-09
  • 打赏
  • 举报
回复
windows的Sleep()是毫秒级
linux的sleep()是秒级,usleep()是微秒级

但准确度就不好说了
lopye 2007-03-08
  • 打赏
  • 举报
回复
windows下sleep()单位是毫秒
linux下sleep()单位是秒
happytang 2007-03-05
  • 打赏
  • 举报
回复
没错,跟平台有关,不同的系统有不同的函数
不精确的可以用循环
windows下sleep()
lockhall 2007-03-05
  • 打赏
  • 举报
回复
用循环

或者delay();不过ms是毫秒级的
believefym 2007-03-05
  • 打赏
  • 举报
回复
http://www.programfan.com/club/showbbs.asp?id=219675

70,011

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧