Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Synchronising threads with signals (or not)

by Anonymous Monk
on Feb 22, 2013 at 16:54 UTC ( #1020191=note: print w/ replies, xml ) Need Help??


in reply to Synchronising threads with signals (or not)

You need to design your application so that the two processes don't have to "start at a similar time to one another." Each one should have a job to do and should wait for a signal unique to them that indicates that they might have work to do ... i.e. that they should not be asleep anymore. Each one, upon waking up, immediately resets the signal they were sleeping for, then processes a work-to-do queue until that queue is empty. Or perhaps the process just "waits on the queue" as needed using semantics already built into the thread-safe-queue object. Each thread of a multithreaded application should not be in any way dependent on what else is happening in any other thread and should be free to pursue whatever its appointed task is, as fast as it can.


Comment on Re: Synchronising threads with signals (or not)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1020191]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (6)
As of 2014-09-16 03:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite cookbook is:










    Results (155 votes), past polls