http://www.perlmonks.org?node_id=1003197


in reply to Do threads do global destruction?

does threads (still) memleak? or Google for Perl threads memleaks

I'm not really a human, but I play one on earth.
Old Perl Programmer Haiku ................... flash japh

Replies are listed 'Best First'.
Re^2: Do threads do global destruction?
by DrWhy (Chaplain) on Nov 09, 2012 at 19:27 UTC
    I don't think the link you gave has any information relevant to my question. I'm asking about the global destruction phase of the perl interpreter and whether the mark and sweep destruction of objects that happens as part of that happens at the end of each thread inside a perl process or only at the end of the entire perl process. This link seems to have more to do with memory leaks which are unrelated to my current issue.

    --DrWhy

    "If God had meant for us to think for ourselves he would have given us brains. Oh, wait..."

      I don't think the link you gave has any information relevant to my question

      Sure it does, it contains code that demonstrates that memory is reclaimed after a thread ends (join) -- "global destruction" must have happened

        Not necessarily. For all I know (well, knew -- until I did my own experimentation) The globals unique to a thread could be destructed using a totally different mechanism -- one that respected reference counts, for instance -- at the end of threads other than the main thread of the script, with perl's special 'global destruction' phase being reserved for the end of the whole perl process. That is not in fact that case as I found out later by my own experimentation, but it can't be decisively concluded from the reading between the lines of a thread on an unrelated topic.

        Just to be clear here. I'm not talking about global destruction as a generalized concept whereby you just care that the global variables are somehow cleaned up at some point by any mechanism that gets the job done. That generic fact is all that can be deduced here. My original question is about a specific phase in the operation of the perl interpreter that is named 'global destruction' and has specific behavioral characteristics that I care about.

        --DrWhy

        "If God had meant for us to think for ourselves he would have given us brains. Oh, wait..."