add a test to excercise inter-thread locking
move source filter from forks.pm to forks::shared.pm, although I doubt that
there will be many cases where forks would only be used.
push with a shared scalar bombs:
push( @shared,$shared ); # bombs
push( @shared,$shared.'' ); # works
Haven't got a clue why.
optimizations:
- Storable::freeze/thaw not always needed: check Thread::Serialize
- change remote function names to command numbers: less traffic, no Storable?
- allow for unix domain sockets as transport medium
- allow for shared memory as transport medium (how will we fix blocking?)
Global destruction sometimes causes strange errors when threads are still
running. Need a way to check for that.
Signalling unlocked variables should become possible. Maybe lock() the
variable before signalling? Probably not. Simply taking away the check for
the lock causes a deadlock at the moment, so that doesn't make much sense.