V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Afralv
V2EX  ›  问与答

为什么 stackoverflow 网站取名栈溢出而不是堆溢出?

  •  
  •   Afralv · 2020 年 8 月 31 日 · 4097 次点击
    这是一个创建于 1968 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,求解。。

    14 条回复    2020-08-31 21:22:05 +08:00
    laoyur
        1
    laoyur  
       2020 年 8 月 31 日
    stack
    heap
    那楼主你觉得这两个怎么翻译?
    yhxx
        2
    yhxx  
       2020 年 8 月 31 日
    可能因为堆被 heap 用掉了?
    woodensail
        3
    woodensail  
       2020 年 8 月 31 日   ❤️ 1
    因为栈溢出是一种常见的攻击手段。而堆溢出,堆还能溢出?
    overthemoon
        4
    overthemoon  
       2020 年 8 月 31 日
    。。。。
    Mutoo
        5
    Mutoo  
       2020 年 8 月 31 日   ❤️ 2
    递归函数能导致栈溢出,而堆只会被耗尽。
    Afralv
        6
    Afralv  
    OP
       2020 年 8 月 31 日
    @Mutoo 谢谢
    Afralv
        7
    Afralv  
    OP
       2020 年 8 月 31 日
    @laoyur 希望您面试的时候也这么答
    polaa
        8
    polaa  
       2020 年 8 月 31 日   ❤️ 4
    polaa
        9
    polaa  
       2020 年 8 月 31 日
    rrfeng
        10
    rrfeng  
       2020 年 8 月 31 日   ❤️ 1
    因为 heap 一般没有 overflow,只会 oom kill (逃
    c6h6benzene
        11
    c6h6benzene  
       2020 年 8 月 31 日 via iPhone   ❤️ 1
    @Afralv #7 面试问这个我就觉得是考英文…
    wqzjk393
        12
    wqzjk393  
       2020 年 8 月 31 日 via iPhone
    堆一般不就是存放大体积的复杂数据结构的么,空间小了怎么能行。
    shenmimu
        13
    shenmimu  
       2020 年 8 月 31 日
    因为堆溢出叫 OutOfMemory 不叫 HeapOverFlow 啊
    jim9606
        14
    jim9606  
       2020 年 8 月 31 日
    我觉得还是 StackOverflow 更容易遇到吧,现代 OS 的栈功能实现时需要硬件支持的,而空间大小有限制,通常只有几 MB,而最容易导致溢出的方法是递归调用。要撑爆堆空间得大片申请内存,不太容易因为误操作引发这个问题,通常得是长期运行的程序。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3314 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 11:31 · PVG 19:31 · LAX 03:31 · JFK 06:31
    ♥ Do have faith in what you're doing.