---
name: "Perl::Critic::Policy::BuiltinFunctions::ProhibitSleepViaSelect"
section: "3pm"
platform: "linux"
package: "perl-perl-critic"
version: "1.156-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Perl::Critic::Policy::BuiltinFunctions::ProhibitSleepViaSelect"
---

# Perl::Critic::Policy::BuiltinFunctions::ProhibitSleepViaSelect(3pm)

Use Time::HiRes instead of something like "select(undef, undef, undef, .05)".

## NAME

Perl::Critic::Policy::BuiltinFunctions::ProhibitSleepViaSelect - Use Time::HiRes instead of something like "select(undef, undef, undef, .05)".

## AFFILIATION

This Policy is part of the core Perl::Critic distribution.

## DESCRIPTION

Conway discourages the use of `select()` for performing non-integer sleeps.  Although documented in perlfunc, it's something that generally requires the reader to read `"perldoc -f select"` to figure out what it should be doing.  Instead, Conway recommends that you use the `"Time::HiRes"` module when you want to sleep.

```
    select undef, undef, undef, 0.25;         # not ok
    use Time::HiRes;
    sleep( 0.25 );                            # ok
```

## CONFIGURATION

This Policy is not configurable except for the standard options.

## SEE ALSO

Time::HiRes.

## AUTHOR

Graham TerMarsch \<graham@howlingfrog.com\>

## COPYRIGHT

Copyright (c) 2005-2011 Graham TerMarsch.  All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
