Yes, I discovered that to, but couldn't work out how you might cause fork to start a new copy of the debugger with that variable changed.

I did think that as AS forks are implemented as threads of the same process, by modifying module so that it incorporated the threadID in the name of the output file at runtime, it might be possible to get a new output file for each process (thread), but as I said, when I loked at the C-source for the .DLL, I found myself going in circles trying to unwind the macros involved and gave up. Even ignoring the macros problem, it was not at all obvious to me whether the debugger could be coerced into using a different handle within each thread, nor whether it would be threadsafe. I was looking at the source for AS 5.6.1 at the time.

In the end, I started playing with the idea of using Benchmark::Timer dynamically required by each child process after it was forked and outputting the results to files opened by the child processes after forking incorporating the psuedo-process ID, but I found my problem before persuing that idea any further. The biggest problem with that idea is that you end up having to modify the program under test in order to profile, which is less than desirable.


Examine what is said, not who speaks.

The 7th Rule of perl club is -- pearl clubs are easily damaged. Use a diamond club instead.


In reply to Re: Re: Re: Profiling forking code? by BrowserUk
in thread Profiling forking code? by Jeppe

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.