in reply to Re: PERL issues a "lock can only be used on shared values" when locking a shared hash
in thread PERL issues a "lock can only be used on shared values" when locking a shared hash

dist/threads-shared/shared.xs in perl.git, implementation is OS specific, see thread.h in perl.git and for Win32, win32/win32thread.h in perl.git. On Windows, the lock is a Critical Section which is a hybrid of atomic CPU instruction in best (usual) case, and kernel mode waiting on semaphores in worst case. Perl doesn't use multi-reader single writer locks. Patches welcome.
  • Comment on Re^2: PERL issues a "lock can only be used on shared values" when locking a shared hash