<snip>
> change the sub to read::
> 
>      open(my $handle, $path) || die $!;
>      return $handle;
> 
> you get the more meaningful error message:
> 
> Invalid value for shared scalar at 1 line 16.

>>> Yep.  This was the original reason I switched to globs which worked
well, seemingly, but alas...
> 
> also in perl 5.8.0.  The fact that it _looks_ like it works in 5.8.0 
> is that $foo{$rec}[1] contains the _string_ "*main::FH", which you 
> can check by taking a ref of it.

>>> It was a nice way to store and reference filehandles.  The
filehandles were linked to sockets.  Each user has various coordinates
stored in a lexically global, shared hash including socket data.
> 

> I'm afraid you will need to pass the file specification of the file 
> to be opened to each thread, and then open a file handle inside that 
> thread...

>>> I need to think this through.  And when I get to the end of this
hurdle I can then see if 5.8.4RC1 fixes the original issue of reclaiming
memory after detaches and joins.  Did you first suggest this upgrade
because you are aware of this issue?

Indebted eternally and humbly grateful,

Steve

Reply via email to