php sleep usleep time_nanosleep

sleep() - 延缓执行

usleep() - 以指定的微秒数延迟执行

time_nanosleep — 延缓执行若干秒和纳秒

time_sleep_until() - 使脚本睡眠到指定的时间为止。

set_time_limit() - 设置脚本最大执行时间

sleep() - 延缓执行

说明

int sleep ( int $seconds )

程序延迟执行指定的 seconds 的秒数。

参数:seconds 暂停的秒数。

返回值: 成功时返回 0,错误时返回 FALSE。

如果函数的调用被一个信号中止,sleep() 会返回一个非零的值。在Windows上,该值总是 192(即Windows API常量WAIT_IO_COMPLETION的值)。其他平台上,该返回值是剩余未sleep的秒数。

错误/异常: 如果指定的 seconds 是负数,该函数会产生一个 E_WARNING 级别的错误。

例子

1

2// current time

3echodate('h:i:s') ."\n";

4// sleep for 10 seconds

5sleep(10);

6// wake up !

7echodate('h:i:s') ."\n";

8?>

该例子会在休眠10秒后输出。

05:31:23

05:31:33

usleep() - 以指定的微秒数延迟执行

说明

void usleep ( int $micro_seconds )

以指定的微秒数延缓程序的执行。

参数: micro_seconds  暂停的时间以微秒计。1微秒(micro second)是百万分之一秒。

返回值: 没有返回值。

例子

1

2// Current time

3echodate('h:i:s') ."\n";

4// wait for 2 seconds

5usleep(2000000);

6// back!

7echodate('h:i:s') ."\n";

8?>

以上例程会输出:

11:13:28

11:13:30

time_nanosleep — 延缓执行若干秒和纳秒

说明

mixed time_nanosleep ( int $seconds , int $nanoseconds )

程序延缓执行指定数量的 seconds 和 nanoseconds。

参数: seconds  必须是一个非负整数。

nanoseconds  必须是一个小于1亿的非负整数。

返回值: 成功时返回 TRUE, 或者在失败时返回 FALSE。

如果延迟被中断,一个关联数组会返回,内容为:

seconds - 延迟剩余未执行的秒数

nanoseconds - 延迟剩余未执行的纳秒数

例子

01

02// Careful! This won't work as expected if an array is returned

03if(time_nanosleep(0, 500000000)) {

04echo"Slept for half a second.\n";

05}

06

07// This is better:

08if(time_nanosleep(0, 500000000) === true) {

09echo"Slept for half a second.\n";

10}

11

12// And this is the best:

13$nano= time_nanosleep(2, 100000);

14

15if($nano=== true) {

16echo"Slept for 2 seconds, 100 microseconds.\n";

17}elseif($nano=== false) {

18echo"Sleeping failed.\n";

19}elseif(is_array($nano)) {

20$seconds=$nano['seconds'];

21$nanoseconds=$nano['nanoseconds'];

22echo"Interrupted by a signal.\n";

23echo"Time remaining: $seconds seconds, $nanoseconds nanoseconds.";

24}

25?>

time_sleep_until() - 使脚本睡眠到指定的时间为止。

说明

bool time_sleep_until ( float $timestamp )

使脚本睡眠到指定的 timestamp。

参数: timestamp将脚本唤醒的时间戳。

返回值:成功时返回 TRUE, 或者在失败时返回 FALSE。

错误/异常: 如果设定的 timestamp 为过去的时间,脚本将会产生一个 E_WARNING 级别的错误。

例子

1

2//returns false and generates a warning

3var_dump(time_sleep_until(time()-1));

4// may only work on faster computers, will sleep up to 0.2 seconds

5var_dump(time_sleep_until(microtime(true)+0.2));

6

7?>

set_time_limit() - 设置脚本最大执行时间

说明

void set_time_limit ( int $seconds )

设置允许脚本运行的时间,单位为秒。如果超过了此设置,脚本返回一个致命的错误。默认值为30秒,或者是在php.ini的max_execution_time被定义的值,如果此值存在。

当此函数被调用时,set_time_limit()会从零开始重新启动超时计数器。换句话说,如果超时默认是30秒,在脚本运行了了25秒时调用 set_time_limit(20),那么,脚本在超时之前可运行总时间为45秒。

参数: seconds 最大的执行时间,单位为秒。如果设置为0(零),没有时间方面的限制。

返回值: 没有返回值。

注释 :

Warning

当php运行于安全模式时,此功能不能生效。除了关闭安全模式或改变php.ini中的时间限制,没有别的办法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,273评论 19 139
  • php usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解包。 uni...
    思梦PHP阅读 6,223评论 1 24
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,408评论 2 33
  • 我是个刚刚成年的孩子,为什么说是一个孩子,无论你个人多么的厉害,有本事,能改变很多人改变不了的事。但年龄是改变不了...
    第三种性格阅读 1,873评论 2 0
  • 今天直播之后,我想立刻写下我的感动:生命之绚烂,在于你多么努力得折腾! 看到了很多同学的进步,我好几次差点在直播间...
    陶子_演说教练阅读 1,729评论 0 2

友情链接更多精彩内容