golang:无法从内存不足崩溃中恢复

2024-04-23

在某些情况下,调用append()会触发内存不足恐慌,并且append()本身似乎不会返回nil。

我怎样才能避免这种恐慌情况并向我的用户显示“资源暂时不可用”?

此致,


你不能。

如果运行时无法为追加分配内存,则可能无法恢复或向用户传达“资源暂时不可用”。例如,GC 可能需要分配来清理,或者调度程序可能尝试分配新线程。因为无法严格控制 Go 程序中的分配,所以无法优雅地处理内存不足的情况。

所有 OOM 条件都会终止 Go 程序。

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

golang:无法从内存不足崩溃中恢复 的相关文章

随机推荐

  • Django Admin:为两个管理站点使用不同的模板

    我有一个 Django 项目 有两个不同的管理站点 如中所述文档 http docs djangoproject com en 1 2 ref contrib admin multiple admin sites in the same u
  • 完美平衡二叉搜索树

    我有一个理论问题Balanced BST 我想建立Perfect Balanced Tree具有2 k 1节点 从常规unbalanced BST 我能想到的最简单的解决方案是使用排序Array Linked list并递归地将数组划分为子
  • R 合并具有相似值的行

    我有一个数据框 行值首先从小到大排序 我计算相邻行之间的行值差异 组合具有相似差异 例如 小于 1 的行 并返回组合行的平均值 我可以使用 for 循环检查每一行的差异 但这似乎是一种非常低效的方法 还有更好的想法吗 谢谢 library
  • Rails 对 :dependent => :destroy 和级联删除/无效/限制做什么

    我正在尝试决定如何最好地为我的 Rails 应用程序设置 如果有的话 外键约束 我有一个模型Response that belongs to a Prompt 我想用 dependent gt destroy摧毁每一个Response属于已
  • 如何在 Java 的 JTextPane 中创建自动完成弹出窗口?

    我正在创建一个 SQL 编辑器 我使用 JTextPane 作为编辑器 我想像 Eclipse 一样实现表名等的自动完成 我认为在另一个组件之上显示信息的适当类是JPopupMenu 它已经正确处理分层以显示自身 JPopupMenu 有一
  • Android 中的自定义键盘视图

    我正在开发一个自定义 Android 键盘 我开始开发我的键盘 基于this http code tutsplus com tutorials create a custom keyboard on android cms 22615教程
  • 对heroku postgresql DB的访问只能仅限于它的heroku应用程序吗?

    由于安全顾问的建议 我最近将一个应用程序从 heroku 迁移到 amazon ec2 然而 他对 Heroku 的了解并不深 疑问仍然存在 对 Heroku PostgreSQL 数据库的访问是否可以限制为只能由应用程序访问 您会推荐 H
  • 在 Windows Server 2003 中将控制台应用程序安装为 Windows 服务

    这可能是一个基本问题 所以提前道歉 我有一个控制台应用程序 我想在 Windows Server 2003 上测试它 我使用 4 0 框架在 C 中以发布模式构建了该应用程序 并将 bin 文件夹的内容粘贴到 windows server
  • 在 Objective-C 中以编程方式创建 .pem 文件?

    我正在尝试使用 iPhone 应用程序中的 Objective C 和 OpenSSL 库以编程方式从证书签名请求创建 PEM 文件 我按照 Adria Navarro 对这个问题的回答生成了 CSR 类型为 X509 REQ 使用钥匙串存
  • 从 Java / C# 角度理解 C++ 编译器

    我是一名经验丰富的 Java C 程序员 最近开始学习 C 问题是 我无法理解如何构建各种头文件和代码文件 这似乎主要是由于我对编译器如何将所有内容链接在一起缺乏了解 我尝试阅读一些教科书 但我的先入之见受到我的 Java 和 C 知识的影
  • 使用 AVPlayer 播放流媒体视频

    如何播放流媒体视频AVPlayer import Cocoa import AVKit class StreamViewController NSViewController var videoPlayer AVPlayer IBOutle
  • maven中这两个设置一样吗?

    我想限制maven仅使用私有 非公共maven存储库 这两个设置具有相同的效果吗 1 settings xml中设置镜像
  • 使用jquery mobile在页面之间传递参数

    jquery mobile 中页面之间传递参数的正确方法是什么 在jquery mobile的Q A中 有一些插件的建议 是强制性的吗 请告诉我正确的方法 没有一个具体的答案 我必须为页面中的所有链接传递参数 http view jquer
  • Mercurial .hgrc 文件

    默认情况下 在 Windows XP 上 Mercurial 将 hgrc 文件存储在 好吧 就我而言 c Documents and Settings srooks 我如何更改该位置 并让它在其中查找 hgrc 文件 例如 c Confi
  • 在哪里可以找到 Hyperledger Fabric peer 命令可能的环境变量?

    配置对等节点运行时 示例 docker compose 文件中包含许多环境变量 有什么地方可以找到它们的全部记录吗 e g environment CORE VM ENDPOINT unix host var run docker sock
  • 如何在 Dockerfile 中添加大型 HTTP 文件并将其从镜像层中排除?

    Our Nexus服务器 http www sonatype com nexus product overview为我们的 Java 项目提供构建工件 包括其安装程序 那个安装程序是真的很大 gt 1GB 我想检索并使用它Dockerfil
  • Matplotlib scatter():大小、标记形状的默认值

    有没有办法设置default标记尺寸 s matplotlib 的参数plt scatter 或者同样设置标记的形状 mpl rcParams keys 有线图的设置 例如 import matplotlib as mpl mpl rcPa
  • 如何在 H2 中创建过程

    这似乎与具有相同标题的其他问题重复 但实际上并非如此 我们的业务逻辑主要作为 DB2 存储过程来实现 我看到 H2 有一个 DB2 兼容模式 很好 我们如何使用 H2 通过这些程序进行内存单元测试 不幸的是 H2 似乎缺少 CREATE P
  • Android中的适配器应该是静态内部类还是非静态内部类

    我在 Activity 中有一个 ListView 并且正在为 ListView 设置自定义适配器 我的适配器类应该是 private static class MyAdapter extends ArrayAdapter or priva
  • golang:无法从内存不足崩溃中恢复

    在某些情况下 调用append 会触发内存不足恐慌 并且append 本身似乎不会返回nil 我怎样才能避免这种恐慌情况并向我的用户显示 资源暂时不可用 此致 你不能 如果运行时无法为追加分配内存 则可能无法恢复或向用户传达 资源暂时不可用