What did you expect to happen?

What were you hoping to prove?

Your sleeps are not doing what you think.

Perl's built-in sleep takes an integer number of seconds as it's argument. So sleep .1; becomes  sleep 0;.

That means that each of your threads:

  1. Starts
  2. Detaches itself so that it will die immediately it finishes rather than hanging around for some other thread to join it and retrieve it's return value.
  3. Print's it's message.
  4. Sleeps for no time
  5. Then finishes. Which as it is detached mean that it's resources are freed immediately.

Hopefully, that explains why there are only ever 3 or 4 threads in the process list at any given time.

As for why the program terminates. I could speculate that your running out of resources somewhere and segfaulting, but that doesn't explain the absence of any error message. Which OS are you running?

Update: If your considering doing anything serious with threads, you should upgrade to 5.8.3 at least and preferably 5.8.4. Ithreads were not very stable before this.


Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"Think for yourself!" - Abigail
"Memory, processor, disk in that order on the hardware side. Algorithm, algoritm, algorithm on the code side." - tachyon

In reply to Re: Win32 and threads; by BrowserUk
in thread Win32 and threads; by jammin2night

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.