Python выдает ошибку, когда установлена ​​точка останова, в противном случае работает нормально - PullRequest
1 голос
/ 01 июля 2019

Я просто перечислю свою настройку, прежде чем сообщить подробности о моей проблеме: PyCharm EDU, Python 3.7.3, PyTorch 1.1.0 и GeForce2080 TI.

Я скачал реализацию PointNet для PyTorch и только что добавил загрузчик данных, соответствующий моему формату данных. Код PointNet: https://github.com/fxia22/pointnet.pytorch PointNet Paper: https://arxiv.org/abs/1612.00593

Работает нормально, однако, если я устанавливаю какие-либо точки останова в своем коде, python время от времени выдает ошибку, прежде чем он вообще перестает работать. Кажется, что какой-то поток прерывается по какой-то причине:

Exception ignored in: <function _DataLoaderIter.__del__ at 0x7fdf32f30378>
Traceback (most recent call last):
    File site-packages/torch/utils/data/dataloader.py"
        self._shutdown_workers()
    File site-packages/torch/utils/data/dataloader.py"
        w.join()
    File /multiprocessing/process.py"
        assert self._parent_pid == os.getpid(), 'can only join a child process'
AssertionError: can only join a child process

Это ТОЛЬКО происходит, если установлена ​​точка останова. Если я уберу точку останова, ошибок вообще не будет. Если я запускаю сценарий без точек останова и ставлю точку останова в какой-то момент во время выполнения, он выдает сообщение об ошибке вскоре после того, как я это сделал.

Это на самом деле не критично, так как я могу просто удалить точки останова, и все работает нормально, тем не менее, я хотел бы знать, что является причиной этой ошибки и как ее исправить, вероятно.

Я провел поиск в сети, но не смог найти ничего, описывающего ту же проблему, с которой я сейчас сталкиваюсь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...