【发布时间】:2021-08-17 15:26:35
【问题描述】:
我想使用 setproctitle 更改生成的多处理管理器 SyncManager 的进程名称,我尝试扩展 multiprocessing.managers.SyncManager:
class MySyncManager(multiprocessing.managers.SyncManager):
def __init__(self):
super(MySyncManager, self).__init__()
self.daemon=True
def run(self):
setproctitle.setproctitle('MySyncManager')
super(MySyncManager, self).run()
if __name__ == '__main__':
mySyncManager = MySyncManager()
mySyncManager.start()
但它似乎不起作用。知道怎么做吗?
【问题讨论】:
-
在 multiprocessing.managers.BaseManager 的文档中发现 SyncManager 是其子类: start([initializer[, initargs]]) 启动一个子进程来启动管理器。如果 initializer 不是 None 那么子进程将在启动时调用 initializer(*initargs)。
标签: python python-multiprocessing multiprocessing-manager