重构 multiprocessing 报错 group argument must be None for now

  • 问题描述
    我尝试着重构 multiprocessing 为非守护进程, 并重构进程池之后, 在创建进程池的时候报错 AssertionError: group argument must be None for now, 我看原生代码中 group 默认就是为None的, 我并没有改动, 但我这里重构之后就不行了, 请帮我看下是什么问题呢?
  • 以下是代码
    import multiprocessing
    from multiprocessing.pool import Pool
    class NoDaemonProcess(multiprocessing.Process):
      """
      重构multiprocessing.Process类,将进程始终定义为非守护进程
      """
      def _get_daemon(self):
          return False
      def _set_daemon(self, value):
          pass
      daemon = property(_get_daemon, _set_daemon)
      #
    class MyPool(Pool):
      """
      重构multiprocessing.Pool类
      """
      Process = NoDaemonProcess
      #
    if __name__ == '__main__':
      # 创建进程池的时候就会报错
      a = MyPool(6)
  • 报错截图
    重构 multiprocessing 非守护进程时报错 group argument must be None for now
讨论数量: 1
Jason990420

所附代码 (只有21行) 没报错, 报错截图指出报错的代码 (至少40行) 非所附代码.

4周前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!