【问题标题】:Memory leak when running python in Mac OS Terminal在 Mac OS 终端中运行 python 时内存泄漏
【发布时间】:2011-07-11 06:00:51
【问题描述】:

我刚刚在 Mac OS Terminal 中运行了一个 python 程序,出现了异常的内存泄漏。

程序很简单:

对于 xrange(1000000000, 2000000000, 10) 中的我: i2 = 我 * 我 打印 i, i2, str(i2)[::2] 如果 str(i2)[::2] == '1234567890': 休息

当程序运行时,它会消耗越来越多的内存,直到用完我的所有内存。 当我终止程序时,我的 Terminal.app 仍然消耗大量内存,所以我猜这是 Terminal.app 的错误?

有人有类似经历吗?

【问题讨论】:

    标签: python macos memory-leaks terminal


    【解决方案1】:

    这不是错误;它实际上是一个功能。 Terminal.app 与许多其他终端仿真器一样,将最近的输出保存在缓冲区中,以便您可以向后滚动(使用向上翻页或滚动条)。您可以通过转到终端 -> 首选项 -> 设置并将回滚限制设置为无限制以外的其他值来限制它的大小。

    【讨论】:

    • 感谢您的回答。是的,我已将历史记录的最大行数设置为无限制。我在发布问题之前忘记检查了。
    【解决方案2】:

    泄漏内存的不是 Python。仔细看。在我的机器上,Python 进程保持安静、稳定的 3.5 MB 内存。

    您看到的内存使用增量很可能是由于终端从未丢弃输出。您可以在“首选项”、“设置”中更改此行为,并将最大行号设置为“无限制”以外的其他内容。

    【讨论】:

      猜你喜欢
      • 2013-11-15
      • 2013-12-06
      • 2018-06-21
      • 1970-01-01
      • 2016-01-10
      • 1970-01-01
      • 2013-07-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多