睡眠功能和睡眠功能之间的唯一区别是第一个参数以秒为单位,另一个以微秒为单位吗?还有什么区别吗??
另一件事,我会用循环使用这个函数,有什么问题会让我意外吗?
通过查看 和 的 PHP 文档usleep
,sleep
您会注意到有2 个不同之处:
for 的参数usleep
是一个表示微秒的整数(微秒是百万分之一秒),而 for 的参数sleep
是一个表示秒的整数。
sleep
返回“成功时为零,错误时返回 FALSE。” usleep
没有返回值。以下是有关 的返回值的更多详细信息sleep
:
如果调用被信号中断,sleep() 返回一个非零值。在 Windows 上,此值将始终为 192(Windows API 中 WAIT_IO_COMPLETION 常量的值)。在其他平台上,返回值将是剩余的睡眠秒数。
一般来说,你应该可以在循环中使用这些函数。话虽如此,但要问的更重要的问题是:为什么您需要一个依赖于暂停执行一段时间的解决方案?这真的是解决您问题的好方法,还是对您只想摆脱的一些奇怪错误或边缘情况的 hack 修复?
usleep
— 以微秒为单位延迟执行。以微秒为单位的暂停时间。一微秒是百万分之一秒。
`sleep` — Delay execution
Delays the program execution for the given number of seconds.
我没有得到这两个功能之间的更多区别
sleep() 允许您的代码在几秒钟内进入睡眠状态。
sleep(5); // sleeps for 5 seconds
usleep() 允许您的代码以微秒为单位。
usleep(2500000); // slees for 2.5 seconds
除此之外,我认为它们是相同的。
sleep($n) == usleep($n * 1000000)
usleep(25000) only sleeps for 0.025 seconds.