python threading.local () в другом модуле - PullRequest
0 голосов
/ 13 декабря 2018

Я пытаюсь передать данные в threading.local () функциям в другом модуле .Код выглядит примерно так:

other_module.py:

import threading

# 2.1  
ll = threading.local()

def other_fn():

 # 2.2    
 ll = threading.local()

 v = getattr(ll, "v", None)
 print(v)

main_module.py:

import threading
import other_module

# 1.1
ll = threading.local()

def main_fn(v):

 # 1.2
 ll = threading.local()

 ll.v = v
 other_fn()


for i in [1,2]:
 t = threading.Thread(target=main_fn, args=(i,))
 t.start()

Но ни одна из комбинаций 1.x - 2.x неработает на меня.Я нашел похожий вопрос - Доступ к локальному объекту потока в другом модуле - Python , но ответ, помеченный как ответ, не работает и для меня, если функция print_message находится в другом модуле .

Можно ли передавать локальные данные потока между модулями , не передавая их в качестве аргумента функции?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...