I've been sweating a multi threaded program for a few weeks now... I first tried Shareable.pm and forked processes- locking was unreliable...
Then I tried ShareLite.pm - it was better but I still had non-deterministic behaviour and found my code hanging while trying to UNLOCK variables... Then I upgraded perl to 5.8.0 and switched to ithreads and ithreads::shared - finally locking seems to be reliable - but i get segfaults sometimes when i try to call threads->new from a thread (and sometimes FETCH errors from INET, and leaked scalars) Just when I was getting ready to give up on perl for threaded applications (and I really like perl in general) I tried forks.pm. I don't see segfaults, i don't get weird locking problems, it just works as advertised... I was quite sceptical given that there are only 2 revisions on CPAN but (at least for me) this module is superior to all the others I mentioned above. THANKS Elizabeth! (i feel we're on a first name basis since you've helped me so much by writing your module - i hope you don't mind) One side note - i do get thousands of lines of Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. Use of uninitialized value in eval "string" at /usr/local/lib/perl/5.8.0/forks.pm line 990. as my program runs. I can't stand to look at this another minute right now so I don't know what's causing that - but i thought i should probably report it... many thanks! brad (PS I originally tried to post this message via nntp but it never made it to the group...) -- Bradley W. Langhorst <[EMAIL PROTECTED]>
