Daemon:...::While1(3)

πŸ’– NAME πŸ’–

okay bestie, this page is Daemon:...::While1(3) from the User Contributed Perl Documentation β€” the module is Daemon::Generic::While1, aka a daemon framework with a default while(1) loop. iconic.


✨ SYNOPSIS ✨

@ISA = qw(Daemon::Generic::While1);

sub gd_run_body {
       # stuff
}

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so this is a slight variation on Daemon::Generic: you get a default gd_run() already provided. It has a while(1) loop that calls gd_run_body() over and over. It checks for reconifg and terminate events and only acts on them between calls to gd_run_body().

Terminate events will be forced through after $Daemon::Generic::force_quit_delay seconds if gd_run_body() doesn't return quickly enough. periodt. πŸ’…


🌸 SUBCLASS METHODS REQUIRD 🌸

yes, that heading says REQUIRD β€” we keep the original spelling, bestie.

The following method is required to be overridden to subclass Daemon::Generic::While1:

  • gd_run_body() β€” This method will be called over and over. This method should include a call to sleep(1) (or a bit more). Reconfig events will not interrupt it. Quit events will only interrupt it after 15 seconds.

πŸŽ€ ADDITIONAL METHODS πŸŽ€

The following additional methods are available for your use (as compared to Daemon::Generic):

  • gd_sleep($period) β€” This will sleep for $period seconds but in one-second intervals so that if a SIGINT or SIGHUP arrives the sleep period can end more quickly.

Using this makes it safe for gd_run_body() to sleep for longer than $Daemon::Generic::force_quit_delay seconds at a time. slay.


🫢 ADDITIONAL MEMBER DATA 🫢

The following additional bits of member data are defined:

  • gd_sigint β€” The time at which an (unprocessed) SIGINT was received.
  • gd_sighup β€” The time at which an (unprocessed) SIGHUP was received.

πŸ‘‘ LICENSE πŸ‘‘

Copyright (C) 2006-2010 David Muir Sharnoff <muir@idiom.com>.  Copyright (C) 2011 Google, Inc.

This module may be used and distributed on the same terms as Perl itself. legal bestie moment. πŸŽ€


okay bye bestie β€” this page is from perl v5.42.0, dated 2017-07-17 πŸ’–βœ¨

πŸ“¦ where this page comes from