On 2016-05-19 04:30, Nick Coghlan wrote: > On 18 May 2016 at 23:20, Daniel Holth <dho...@gmail.com> wrote: >> I would like to take another stab at adding a threadlocal "str(bytes) raises >> an exception" to the Python interpreter, but I had a very hard time >> understanding both how to add a threadlocal value to either the interpreter >> state or the threadlocal dict that is part of that state, and then how to >> access the same value from both Python and CPython code. The structs were >> there but it was just hard to understand. Can someone explain it to me? > > Christian covered the C aspects of the API, while the general purpose > Python aspects live in the threading module. > > However, the Python level thread-local API doesn't provide direct > access to the thread state dict. Instead, it provides access to > subdicts stored under per-object keys in that dict, keyed as > "thread.local.<id>":
In case you wonder about subdicts, they are required to provide multiple thread local objects. Each thread local instance has its own key in each thread state dict. The approach enables thread local to have independent storage objects. Christian _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com