Could JavaFan explanation have been accidentally activated by the way we wrote the application?
I've no idea which explanation you are referring to.

But if your application "works", it doesn't work in the way you think it does. Forked processes do not share data*,**. Not on the OS level, and certainly not on Perl level. If you think otherwise, it will be easy for you to present to us a short, stand alone piece of code that proves different. Until you do so, I will refuse to believe you.

*There's a level of indirect sharing. If you have open file descriptors when forking, the OS will give the child and parent their own copy of the descriptors -- but the descriptors will still point to the same file pointer. That's why you often see children close one or more of STDIN, STDOUT or STDERR after forking.

**Well, for the past couple decades, OSses usually use copy-on-write when forking, so process may "share" data (or rather 'memory pages') that neither of them have written to. But this is just a pointer trick deep in the bowels of your OSses memory management.


In reply to Re^11: Defining global variable in a subroutine by JavaFan
in thread Defining global variable in a subroutine by bihuboliya

Title:
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, details, 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, summary, 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.