[Python-Dev] Retrieve an arbitrary element from asetwithoutremoving it

Nick Coghlan ncoghlan at gmail.com
Tue Nov 10 11:51:19 CET 2009


Martin v. Löwis wrote:
>> I'm not sure, but isn't that thread-unsafe?
> 
> You are right; it's thread-unsafe.
> 
> I would fix it by catching the RuntimeError, and retrying. Given the
> current GIL strategy (including proposed changes to it), it won't happen
> two times in a row, so the number of retries would be bounded.

It's also one of the major reasons for not sharing mutable containers
between threads if you can avoid it (and serialising access to them if
you can't)

Cheers,
Nick.

-- 
Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia
---------------------------------------------------------------


More information about the Python-Dev mailing list