Это сам ответ. Мой минимальный пример ниже.
aaa.py
from multiprocessing.managers import BaseManager
import queue
queue_a = queue.Queue()
queue_b = queue.Queue()
BaseManager.register('queue_a', callable=lambda: queue_a)
BaseManager.register('queue_b', callable=lambda: queue_b)
m = BaseManager(address=('', 50000), authkey=b'qwerty')
m.start()
shared_queue_a = m.queue_a()
shared_queue_b = m.queue_b()
shared_queue_a.put("How are you?")
msg = shared_queue_b.get()
print("%s: %s" % (__file__, msg))
m.shutdown()
bbb.py
from multiprocessing.managers import BaseManager
BaseManager.register('queue_a')
BaseManager.register('queue_b')
m = BaseManager(address=('localhost', 50000), authkey=b'qwerty')
m.connect()
queue_a = m.queue_a()
queue_b = m.queue_b()
msg = queue_a.get()
print("%s: %s" % (__file__, msg))
queue_b.put("I'm fine.")
Выполнить эти сценарии.
./aaa.py &; sleep 1; ./bbb.py
Печать
./bbb.py: How are you?
./aaa.py: I'm fine.
Я выбрал модуль multiprocessing.managers, его пример кода URL является https://docs.python.org/3.5/library/multiprocessing.html#using-a-remote- менеджер – shiina