Процесс закрытия Python, поток, канал, очередь, таймеры - PullRequest
0 голосов
/ 14 января 2019

У меня есть пара процессов и потоков, которые взаимодействуют с каналами и очередями. Мне нужно закрыть все это, но получить ошибку

Процесс завершен с кодом выхода -1073740791 (0xC0000409)

Я думаю, что проблема в порядке закрытия. Сначала я пытаюсь закрыть процессы, затем потоки, а затем очереди и каналы

def reset(self):
    try:
        self.process.terminate()
        self.processBullet.terminate()
        self.tankCollisionProcess.terminate()
        self.processEWC.terminate()
        self.processECB.terminate()
        self.thread.stop()
        self.thread_enemy_bullet.stop()
        if self.move_to_new_level is False:
            self.thread_enemy_move.stop()
            self.myPipe1.close()
            self.myPipe2.close()
            self.queueTile.close()
            self.myPipe1 = None
            self.myPipe2 = None
            self.queueTile = None

        self.queueTileC.close()
        self.queueEWC.close()
        self.pipeB1.close()
        self.pipeB2.close()
        self.pipeBullet1.close()
        self.pipeBullet2.close()
        self.pipeT1.close()
        self.pipeT2.close()
        self.pipe1.close()
        self.pipe2.close()
    except:
        pass
    finally:
        self.process = None
        self.processBullet = None
        self.tankCollisionProcess = None
        self.processECB = None
        self.processEWC = None
        self.thread = None
        self.thread_enemy_bullet = None

        self.player.hide()
        self.player.destroy()
        self.player = None
        self.level.remove_map()
        self.level = None

        self.timer_pecurkica.disconnect()
        self.timer_pecurkica.stop()
        self.timer_pecurkica_hide.disconnect()
        self.timer_pecurkica_hide.stop()
        self.timer_dexm.disconnect()
        self.timer_dexm.stop()
        self.no_pu.disconnect()
        self.no_pu.stop()
        self.power_up = None
        self.enemies.delete_all_enemies()
        self.enemies = None
...