Re: [mh] Is this the expected behaviour of process_item?
Giles Godart-Brown <[email protected]> Thu, 18 Feb 2021 18:28:57 +0000
| Newsgroups | gmane.comp.misc.misterhouse.user |
|---|---|
| Message-ID | <[email protected]> |
I was going to build it for myself, then if its good enough (?) and fulfils backwards compatibility I will add a pull G On 18/02/2021 17:25, Jeff Siddall via misterhouse-users wrote: > Giles, > > When you say "I'll build a queue" do you mean for your project or > adding it onto process_items? As long as it was backwards compatible > with the existing behavior of a process_item, it would be nice to add > that onto the process_item so there is a standard way for anyone to > push items onto a process_item queue instead of everyone implementing > it their own way. > > Jeff > > > On 2021-02-18 11:47 a.m., Giles Godart-Brown wrote: >> >> Thanks H >> >> I'll build a queue and update the docs over the weekend >> >> Giles >> >> On 18/02/2021 14:24, H Plato wrote: >>> As far as I know that’s how it works, the process_item has a single >>> thread. You can check if the process_item is still active by >>> calling$p_longproc->done(), and then queuing the additional commands >>> to an array. That’s how I’ve dealt with this in some of my modules >>> >>>> On Feb 18, 2021, at 1:22 AM, Giles Godart-Brown >>>> <[email protected] <mailto:[email protected]>> wrote: >>>> >>>> I use process_items to send messages and urls, occasionally >>>> (usually when I write bad code) I need to send a lot of emails in >>>> quick succession but MisterHouse kills any unfinished ones, rather >>>> than running them in parallel which is what I expected. To test >>>> this I built a minimum reproducible case below where it launches a >>>> process that simply sleeps for 5 seconds twice in succession. As >>>> you can see from the print log, he first one gets killed. >>>> >>>> Is this normal? >>>> >>>> Giles >>>> >>>> <mytest.pl> >>>> >>>> print_log( "Longproc run 1", "INFORMATIONAL", "p_longproc" ); >>>> start $p_longproc; >>>> print_log( "Longproc run 2", "INFORMATIONAL", "p_longproc" ); >>>> start $p_longproc; >>>> </mytest.pl> >>>> >>>> <longproc.sh> >>>> >>>> #!/bin/sh >>>> # shell to sleep >>>> echo longproc start 5 second sleep pid= $$ >>>> sleep 5 >>>> echo "longproc end" >>>> exit 0 >>>> </longproc.sh> >>>> >>>> <print.log> >>>> >>>> 18/02/2021 08:10:27 [p_longproc] INFO Longproc run 1 >>>> 18/02/2021 08:10:27 [p_longproc] INFO Longproc run 2 >>>> Warning, a previous 'start' on this process has not finished yet >>>> Killing unfinished process id 9380 >>>> cmd=//home/pi/mh/GGBcode/procs/longproc.sh >>>> >>>> ... >>>> >>>> 18/02/2021 08:10:33 [p_longproc] longproc start 5 second sleep pid= >>>> 9381 >>>> 18/02/2021 08:10:33 [p_longproc] longproc end >>>> >>>> </print.log> >>>> >>>> ________________________________________________________ >>>> To unsubscribe from this list, go to: >>>> https://lists.sourceforge.net/lists/listinfo/misterhouse-users >>>> >>> >> >> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> >> Virus-free. www.avg.com >> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> >> >> >> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >> >> >> ________________________________________________________ >> To unsubscribe from this list, go to: >> https://lists.sourceforge.net/lists/listinfo/misterhouse-users >> > > > ________________________________________________________ > To unsubscribe from this list, go to: > https://lists.sourceforge.net/lists/listinfo/misterhouse-users > -- This email has been checked for viruses by AVG. https://www.avg.com ________________________________________________________ To unsubscribe from this list, go to: https://lists.sourceforge.net/lists/listinfo/misterhouse-users