免费商店的“堆”一词的由来是什么?

2024-05-11

我试图找到免费存储通常被称为堆的官方(或足够好的)原因。

除了它从数据段末尾增长这一事实之外,我实在想不出一个很好的理由,特别是因为它与堆数据结构关系不大。

注意:很多人提到这只是一大堆没有组织的东西。但对我来说,“堆”一词在物理上意味着一堆物理上相互依赖的东西。你从下面拉出一个,其他所有东西都会倒塌在上面,等等。换句话说,对我来说,堆听起来组织松散(例如,最新的东西在上面)。这并不是堆在大多数计算机上实际工作的方式,但如果你将东西放在堆的开头然后增长它,我想它可以工作。


Knuth 拒绝将术语“堆”用作空闲内存存储的同义词。

一些作者大约从 1975 年开始将可用内存池称为“堆”。但在本系列书籍中,我们将仅在与优先级队列相关的更传统意义上使用该词。 (基本算法,第三版。,p。第435章)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

免费商店的“堆”一词的由来是什么? 的相关文章

  • 内存不足,无法继续运行 Java 运行时环境

    我的系统有 4 GB RAM 运行 Windows 操作系统 我安装了 VMWare 来设置具有 2GB RAM 的 Ubuntu 虚拟机 在 Ubuntu 中 我打开 Eclipse 并开始编码 Eclipse 开始一次又一次关闭 我开始
  • 无状态与有状态

    我对包含有关编程中无状态和有状态设计的一些具体信息的文章感兴趣 我很感兴趣 因为我想了解更多有关它的信息 但我真的找不到任何关于它的好文章 我在网上读过几十篇文章 这些文章模糊地讨论了这个主题 或者他们正在谈论 Web 服务器和会话 这也是
  • 在生产系统上详细分析 Tomcat 堆

    使用 JMX 控制台分析了在 tomcat 中运行的轻负载 Web 应用程序后 发现 PS Old Gen 增长缓慢但持续 它从 200MB 开始 然后以每小时 80MB 左右的速度增长 CPU不是问题 它平均运行在0 1 但在某个地方它会
  • 网站和网络应用程序有什么区别? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我很难自己找出网站和网络应用程序之间的区别 在我看来 网站指向特定页面 而 Web 应用程序更像是内容和信息的某种 门户 但我遇到的问题是 仍然
  • 分配失败 - JavaScript 堆内存不足

    我正在开发一个使用 NextJs 和 ReactJs 开发的项目 突然这个项目出现了分配失败 JavaScript 堆内存不足问题 我已经尝试了网上的所有资源 但是这些资源对我不起作用 我想 也许 next config js 或 webp
  • C/C++ 中 pow() 函数的实现是否因平台或编译器而异?

    花了一天时间调试内置的pow 函数的输出 我的编译器和在线编译器的输出不同 那是一个很长的故事 我写了以下内容最小 完整且可验证的示例 https stackoverflow com help mcve重现情况 Code include
  • 什么是“柯里化”?

    我在几篇文章和博客中看到了对柯里化函数的引用 但我找不到一个很好的解释 或者至少是一个有意义的解释 柯里化是指将一个接受多个参数的函数分解为一系列函数 每个函数只接受一个参数 这是一个 JavaScript 示例 function add
  • Ant:将compilerarg传递给javac

    我有可以编译的 ant 脚本
  • Java - 堆与直接内存访问

    我最近遇到sun misc Unsafe类 允许用户以类似于 C 的方式分配 解除分配和一般访问内存 我读过一些解决这个问题的博客 例如 堆内存和直接内存哪个更快 http mentablog soliveirajr com 2012 11
  • Erlang:如何限制分配给进程的内存

    我要问的是是否可以限制分配给特定进程的内存 堆或堆栈 以便该进程不能超过它 也许类似于 process flag min heap size MinHeapSize 但针对最大堆 您可以将某种进程跟踪 gen server 放在一起 定期检
  • 类型提示中 _ 的正确术语是什么?

    在 Rust 的类型提示中 可以在注释中使用部分类型 如下所示 let myvec Vec lt gt vec 1 2 3 部分类型注释中下划线的正确术语是什么 我对 Rust 术语以及更多学术类型理论术语感兴趣 我找到了一个一份官方文件
  • 诊断 Mac OS X 上的堆碎片?

    我正在编写的核心基础应用程序似乎消耗的内存比我实际分配的内存多 根据活动监视器中的 真实内存 计数 我已通过 Instruments 中的 实时字节分配 视图确认我的实际分配符合我的预期 大约 10MB 但活动监视器中的 真实内存 计数显示
  • Git 中“瓷器”一词是什么意思?

    瓷器 一词偶尔出现在 Git 文档中 这是什么意思 瓷器 是通常制造厕所 有时也制造洗脸盆等其他固定装置 的材料 这与 管道 实际的管道和排水管 不同 在 管道 中 瓷器为管道提供了更用户友好的界面 Git 类比地使用这个术语 将用户通常不
  • 为什么 Haskell 中有协函子和逆变函子的区别,而范畴论却没有区别?

    这个答案是从范畴论的角度来看的 https math stackexchange com a 661989 72174包括以下语句 事实是 协函子和逆变函子之间没有真正的区别 因为每个函子只是一个协变函子 More in details a
  • V8 如何管理它的堆?

    我知道V8的垃圾收集在工作时 会从GC的root开始追踪 这样无法到达的对象就会被标记然后被清除 我的问题是GC是如何遍历那些对象的 必须有一个数据结构来存储所有可达或不可达的对象 位图 链接表 顺便说一句 JVM 也做同样的事情吗 艾伦秀
  • 什么是 API 密钥? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如今 我几乎在每个跨服务应用程序中都看到这个词 API 密钥到底是什么以及它的用途是什么 另外 公共 API 密钥和私有 API 密钥
  • 堆分配对象是否有一个永不为空的唯一所有者?

    目前 我正在存储一个集合std unique ptrs 到堆分配的多态类型对象 struct Foo virtual Foo default Collection
  • CSS 属性名称中的“font-”与“text-”

    CSS 属性名称中使用的术语 文本 和 字体 有什么区别 它们的含义是否相同 或者以以下开头的 CSS 属性名称之间是否存在语义差异font 和一个开头text 例如 为什么我们有这些 CSS 属性 font size 34px text
  • WPF 每次打开和关闭窗口时都会增加内存

    我已经做了非常简单的测试 只是为了了解 wpf 如何与内存一起工作 我用一个窗口创建一个项目 其中有一个Button 第二个窗口完全是空的 当我按下Button单击打开第二个窗口 窗口 1 后面的代码
  • 从列表中获取数组而不进行堆分配

    我有一个列表 我想将其数组分配给一个属性 public void BuildMesh List

随机推荐