viksnamax
@viksnamax
Aliens is here!

Почему идёт закрытие канала в multiprocessing?

Использую multiprocessing в python, запускаю программу, она выполняет всё необходимое и завершается такой ошибкой:
Traceback (most recent call last):
  File ".\src\controller.py", line 139, in <module>
    main()
  File ".\src\controller.py", line 128, in main
    r2.send({"action": "add_items_con"})
  File "C:\Users\Kulic\AppData\Local\Programs\Python\Python38-32\lib\multiprocessing\connection.py", line 206, in send
    self._send_bytes(_ForkingPickler.dumps(obj))
  File "C:\Users\Kulic\AppData\Local\Programs\Python\Python38-32\lib\multiprocessing\connection.py", line 280, in _send_bytes
    ov, err = _winapi.WriteFile(self._handle, buf, overlapped=True)
BrokenPipeError: [WinError 232] Идет закрытие канала

  1. Если подобная ошибка выскакивает после завершения программы это критично
  2. По какой причине может выскакивать подобная ошибка?
  3. Какие существуют варианты её решения? В документации по этому поводу ничего не сказанной, также читал, что подобная ошибка связанна с нехваткой оперативной памяти, но я сильно сомневаюсь, что 4ГБ RAM не хватает на запуск всего двух процессов, это родительский и дочерний

Так же нашёл в документации вот это:

Close the Process object, releasing all resources associated with it. ValueError is raised if the underlying process is still running. Once close() returns successfully, most other methods and attributes of the Process object will raise ValueError.

возможно, это нормально что высвечивается эта ошибка?
  • Вопрос задан
  • 393 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы