如何在Perl中睡眠一毫秒? [英] How do I sleep for a millisecond in Perl?

查看:183
本文介绍了如何在Perl中睡眠一毫秒?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Perl中我怎么睡不到一秒钟?

How do I sleep for shorter than a second in Perl?

推荐答案

sleep的Perldoc页面上:

要获得比一秒更细粒度的延迟,请使用 Time :: HiRes 模块(从CPAN开始,并从标准发行版本的Perl 5.8开始)提供usleep().

For delays of finer granularity than one second, the Time::HiRes module (from CPAN, and starting from Perl 5.8 part of the standard distribution) provides usleep().

实际上,它提供usleep()(以毫秒为单位)和nanosleep()(以毫微秒为单位).您可能需要usleep(),它可以让您处理更简单的数字. 1毫秒睡眠(每次使用):

Actually, it provides usleep() (which sleeps in microseconds) and nanosleep() (which sleeps in nanoseconds). You may want usleep(), which should let you deal with easier numbers. 1 millisecond sleep (using each):

use strict;
use warnings;

use Time::HiRes qw(usleep nanosleep);

# 1 millisecond == 1000 microseconds
usleep(1000);
# 1 microsecond == 1000 nanoseconds
nanosleep(1000000);

如果您不想(或无法)加载模块来执行此操作,则还可以使用内置的

If you don't want to (or can't) load a module to do this, you may also be able to use the built-in select() function:

# Sleep for 250 milliseconds
select(undef, undef, undef, 0.25);

这篇关于如何在Perl中睡眠一毫秒?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆