Вы могли поместить тело своего сценария в функцию, и затем Вы могли возвратиться из той функции.
def main():
done = True
if done:
return
# quit/stop/exit
else:
# do other stuff
if __name__ == "__main__":
#Run as main program
main()
Я предлагаю сторонний профилировщик, такой как YourKit , который может позволить вам делать снимки, не отключая сначала сборщик мусора. Дополнительный бонус, вы можете сделать снимок без всяких махинаций ctrl-break.
У меня здесь есть код, который может программно получить дамп кучи через JMX:
Ссылка: JmxHeapDumper.java
Комментарии в исходном коде содержат 2 ссылки на статьи который содержал полезную информацию о том, как снимать дамп кучи. Я не знаю наверняка, но если вам повезет, возможно, подход JMX позволит каким-то образом избежать GC. Надеюсь, это поможет!