LINUX.ORG.RU

Сообщения xtesterx

 

[Python][multiprocessing]Singleton для нескольких процессов

Форум — Development

Приветствую.
Имеется некий объект, выполняющий роль объекта-одиночки (паттерн Singleton), который должен быть доступным для всех порождённых классов процессов (именно процессов, которые наследуются от multiprocessing.Process) и раздавать какие-либо данные (например выборки из БД и т.д.)
Собственно, как можно добиться действительно только одного объекта, который могут совместно использовать порождённые подпроцессы (и как они должны к нему обращаться, то есть, получать доступ к этому объекту и вызывать его методы), если допустим, что сам объект-провайдер данных (наш синглтон), создаётся в главном потоке (в принципе, не суть важно. где он будет создаваться). Причём, в данном случае, просто очередь multiprocessing.Queue()/JoinableQueue() не подойдут, так как пораждённый процесс сам должен решать, когда ему обратиться к этому объекту-провайдеру одиночке за новой порцией данных.

зы: синхронизация в самом синглтоне - это само-собой, не понятно как обеспечить его уникальность и доступность для всех подпроцессов, как к объекту?

 ,

xtesterx
()

RSS подписка на новые темы