Message413140
Eryk, I don't think that workaround is solid on Windows in all cases. For example, if .join() is called with a timeout, the same timeout is passed to lock.acquire(block, timeout). If the acquire() in fact times out, but the store to the `acquired` variable is interrupted, `if _WINDOWS and acquired is None` will succeed, despite that the lock is still locked. Then we go on to - again - incorrectly release the lock and call _stop().
But please don't "repair" that: platform-specific tricks aren't on a path to an actual solution ;-) If the latter requires some new C code, fine. |
|
Date |
User |
Action |
Args |
2022-02-12 18:58:50 | tim.peters | set | recipients:
+ tim.peters, pitrou, vstinner, serhiy.storchaka, eryksun, Kevin Shweh, bjs, SnoopJeDi |
2022-02-12 18:58:50 | tim.peters | set | messageid: <1644692330.68.0.487421460638.issue46726@roundup.psfhosted.org> |
2022-02-12 18:58:50 | tim.peters | link | issue46726 messages |
2022-02-12 18:58:50 | tim.peters | create | |
|