The following module was proposed for inclusion in the Module List:

  modid:       Proc::NiceSleep
  DSLIP:       bmpfp
  description: Configurable sleep and priority access.
  userid:      JOSHR (Josh Rabinowitz)
  chapterid:    4 (Operating_System_Interfaces)
  communities:
    personal mailing lists, friends

  similar:
    Time::HiRes

  rationale:

    There are times when being 'nice' isn't enough -- in some
    situations that might not yield the system as much as you want. This
    perl module is a rewrite of some code used to keep a long-running
    script from slamming a server.

    Simple system priorities may not yield the system enough when the
    real system hog is a behind-the-scenes database (perhaps from
    inefficient database queries). In my experience this might occur
    when the program is prone to bottleneck at the disk -- perhaps
    because of extensive random seeks, or because the program trying to
    write to the file system faster than the disk can handle, or for
    many other reasons.

    This perl module allows a flexible and easy-to-understand mechanism
    to have a process 'sleep' in a configurable and judicious manner, so
    as to allow other processes less-obstructed use of the system.

    As written, this module attempts to load Time::HiRes, and uses that
    module's time() and sleep() replacements whereever possible. This
    module is _not_ dependent on Time::HiRes. I had originally intended
    to call this module Time::SmartSleep but decided that the current
    proposed name (Proc::NiceSleep) was more descriptive and
    appropriate: at its core this module makes use of time() and
    sleep()-like behavior heavily. It additionally provides an easy,
    fault-tolerant setpriority() wrapper called nice(). I believe that
    this module should be included in the module list because it offers
    a simple, well understood and tolerant wrapper to setpriority()
    (called nice()), because it will, if used appropriately, contribute
    to the more gentle operation of perl scripts on computers all across
    the land, and because it offers an easy way to retro-fit an existing
    loop-based script to use sleep() in a quasi-intelligent and, (if
    Time::HiRes is loaded and supports it), fine-grained manner.

    In the spirit of release early, release often, the current beta
    version can be found at http://cpan.perl.org/authors/id/J/JO/JOSHR/
    .

    I look forward to hearing comments about the API, namespace use, or
    features the module should or shouldn't have. Thanks in advance,
    Josh 'joshr' Rabinowitz a

  enteredby:   JOSHR (Josh Rabinowitz)
  enteredon:   Tue Feb 19 19:11:20 2002 GMT

The resulting entry would be:

Proc::
::NiceSleep       bmpfp Configurable sleep and priority access.      JOSHR


Thanks for registering,
The Pause Team

PS: The following links are only valid for module list maintainers:

Registration form with editing capabilities:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=7a000000_c0f451d66950d65f&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=7a000000_c0f451d66950d65f&SUBMIT_pause99_add_mod_insertit=1

Reply via email to