Trying to use threading.local()
Chris Angelico
rosuav at gmail.com
Thu Sep 13 08:29:36 EDT 2018
On Thu, Sep 13, 2018 at 10:22 PM, Peter Otten <__peter__ at web.de> wrote:
> Antoon Pardon wrote:
>
>> On 12-09-18 22:14, Peter Otten wrote:
>>> As I understand it you need one local() instance that is shared by all
>>> workers. Every thead will then see thread-specific values.
>>
>> It has always puzzled me how this is useful. The times I work with
>> threads, I just put thread specific values in the local variables of the
>> thread function.
>
> That would be my preferred approach, too. Passing around variables through
> multiple levels of function calls may be inconvenient, but global variables
> tend to cause more trouble in the long run.
"Preferred" doesn't exclude the possibility that alternatives are
needed, though. For example, good luck making decimal.Decimal contexts
work correctly without the help of thread-locals - there MIGHT be a
way to do it, but even if there is, it sure won't be pretty.
ChrisA
More information about the Python-list
mailing list