У меня есть несколько классов (выполняется одновременно с использованием потоков). Все они должны получить доступ к одному словарю/объекту (содержащему значения конфигурации из базы данных и ссылки на все другие объекты, чтобы иметь возможность вызывать методы между двумя потоками)Общие данные между объектами класса
Что было бы лучшим способом реализовать это?
Должен ли я создать модуль, который хранит и получает данные?
Глобальная переменная?
Я довольно новыми для Python, и я чувствую, как им приближается это неправильный путь
Edit (небольшой пример сценария)
#!/usr/local/bin/python3.3
class foo(threading.Thread):
def run(self):
# access config from here
y = bar(name='test').start()
while True:
pass
def test(self):
print('hello world')
class bar(threading.Thread):
def run(self):
# access config from here
# access x.test() from here
if __name__ == '__main__':
x = foo(name='Main').start()
Можете ли вы быть немного более конкретно? Это зависит от того, что вы пытаетесь реализовать. –
@JoelCornett Я добавил небольшой пример. – peipst9lker
Я все еще не совсем уверен, что вы пытаетесь выполнить, но мне кажется, что вы можете передать метод 'test' в' y', когда вы его создаете. Конечно, вам нужно будет изменить наследуемый конструктор 'bar .__ init __()', чтобы принимать и хранить аргументы. –