Hi Max, On Mon, 18 Feb 2019, Max Kirillov wrote: > On Mon, Feb 18, 2019 at 10:06:21PM +0100, Ævar Arnfjörð Bjarmason wrote: > >> But in our attempt to exit(), we try to "cleanup children" and that > >> is what gets stuck. > > > > I have not paid enough attention to this thread to say if this is dumb, > > but just in case it's useful. For this class of problem where cleanup > > bites you for whatever reason in Perl, you can sometimes use this: > > > > use POSIX (); > > POSIX::_exit($code); > > > > This will call "exit" from "stdlib" instead of Perl's "exit". So go away > > *now* and let the OS deal with the mess. Perl's will run around cleaning > > up stuff, freeing memory, running destructors etc, all of which might > > have side effects you don't want/care about, and might (as maybe in this > > case?) cause some hang. > > * Perl is running in foreground, so it cannot outlive test > case and spoil the subsequent ones. > * From the dumps I have an impression that it waits > legitimately - there are other processes to wait for. > And anyway the waits happen before perl script comes to > its exit. > > Though I am already convinced that I should have done the > helper in C. Let's see when I have time to fix it. Perl has this nasty habit of causing unexpected problems, doesn't it? I look forward to that dependency on Perl going away, thank you so much! Ciao, Dscho