◐ Shell
clean mode source ↗

Message 94115 - Python tracker

> Antoine Pitrou <pitrou@free.fr> added the comment:
>
> Rather than having a kind of global module registry, locks could keep
> track of what was the last PID, and reinitialize themselves if it changed.
> This is assuming getpid() is fast :-)

Locks can't blindly release themselves because they find themselves
running in another process.

If anything if a lock is held and finds itself running in a new
process any attempt to use the lock should raise an exception so that
the bug is noticed.

I'm not sure a PID check is good enough.  old linux using linuxthreads
had a different pid for every thread, current linux with NPTL is more
like other oses with the same pid for all threads.