延时函数delay与sleep有什么区别呢?

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jidongdong66/article/details/6334028
   在VC中使用带上头文件
  #include <windows.h>
  注意:
  在VC中Sleep中的第一个英文字符为大写的"S"
  在标准C中是sleep, 不要大写.. 下面使用大写的来说明,, 具体用什么看你用什么编译器. 简单的说VC用Sleep, 别的一律使用sleep.
  Sleep函数的一般形式:
  Sleep(unisgned long);
  其中,Sleep()里面的单位,是以毫秒为单位,所以如果想让函数滞留1秒的话,应该是Sleep(1000);
  例:
  #include <windows.h>
  int main()
  {
  int a;
  a=1000;
  Sleep(a);/* VC 使用Sleep*/
  return 0;
  }

usleep功能:
暂停执行。 语法: void usleep(int micro_seconds); 返回值: 无 函数种类: PHP 系统功能 内容说明:本函数可暂时使程序停止执行。参数 micro_seconds 为要暂停的毫秒数(微妙还是毫秒?)。 注意:这个函数不能工作在 Windows 操作系统中。参见:usleep() 与sleep()类似,用于延迟挂起进程。进程被挂起放到reday queue。
  只是一般情况下,延迟时间数量级是秒的时候,尽可能使用sleep()函数。
  且,此函数已被废除,可使用nanosleep。
  如果延迟时间为几十毫秒,或者更小,尽可能使用usleep()函数。这样才能最佳的利用CPU时间

delay:
函数名: delay 
  功 能: 将程序的执行暂停一段时间(毫秒) 
  用 法: void delay(unsigned milliseconds); 
  程序例: 
  /* Emits a 440-Hz tone for 500 milliseconds */ 
  #include<dos.h> 
  int main(void) 
  { 
  sound(440); 
  delay(500); 
  nosound(); 
  return 0; 
  }
  (由于delay读音像地雷,在各大OI灌水区通用……) 


delay()是循环等待,该进程还在运行,占用处理器。   
sleep()不同,它会被挂起,把处理器让给其他的进程。

sleep()参数指定暂停时间,单位是s   
delay()参数指定暂停时间,单位是ms
展开阅读全文

没有更多推荐了,返回首页