Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
I have a script that does some stuff in a tight loop and than sleeps at the end of each loop for an unpredicatable amount of time (few seconds to few minutes).

(A) I want it to run continuously in the background

(B) I don't want to accidentally run two of them at the same time.

(C) I want it to automatically come back alive after system boot.

(D) It might accidentally get killed, so I want it to be able to tollerate that.

My guesses are as follows:

? Open a dummy lock file when the script starts and don't close it? Die if you cant open it? Code for this? open or die?

? Edit some kind of file in my /home/andrew directory that gets automatically executed and run it with a trailing &? to run in the background.

Will this satisfy the above requirements?

Update: It's not a networking or IP related program. Sorry, the daemon title through you off. I meant it in the sense of a program that stays uniquely alive. I guess daemon's accepted meaning is something small that listens on a port like daytime or ntp - this is not what I mean.


Andrew Tomazos  |  |

In reply to Writing a Perl Daemon by tomazos

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    [Corion]: LanX: Yes, that's the main problem - you have lots (and lots) of workarounds in various places and stages of the processing, and to clean that mess up requires action across the complete codebase. And it's almost impossible to do it piece-by-piece

    How do I use this? | Other CB clients
    Other Users?
    Others contemplating the Monastery: (13)
    As of 2017-01-16 14:08 GMT
    Find Nodes?
      Voting Booth?
      Do you watch meteor showers?

      Results (150 votes). Check out past polls.