文章 2025-05-13 来自:开发者社区

Go语言GC:三色标记法工程启示

为什么GC会成为性能瓶颈? 在Go语言开发中,垃圾回收机制让我们免除了手动内存管理的烦恼,但也常成为高性能系统的隐形杀手。当应用面临延迟敏感型场景时,一次不合时宜的GC可能导致服务响应时间突增,从几毫秒飙升至几十甚至上百毫秒。 这种情况你是否遇到过? 服务运行平稳,突然出现周期性的延迟尖峰 负载增加时,CPU使用率不成比例地上升 程序内存占...

Go语言GC:三色标记法工程启示
文章 2024-08-26 来自:开发者社区

听说过对 Go map 做 GC 吗?

在 Golang 中的 map 结构,在删除键值对的时候,并不会真正的删除,而是标记。那么随着键值对越来越多,会不会造成大量内存浪费? 首先答案是会的,很有可能导致 OOM,而且针对这个还有一个讨论:https://github.com/golang/go/issues/20135。大致的意思就是在很大的 map 中,delete 操作没有真正释放内存而可能导致内存 OOM。 所...

听说过对 Go map 做 GC 吗?
文章 2024-08-03 来自:开发者社区

Go - 使用 sync.Pool 来减少 GC 压力

文章目录: 前言 sync.Pool 小结 推荐阅读 前言 sync.Pool 是临时对象池,存储的是临时对象,不可以用它来存储 socket 长连接和数据库连接池等。 sync.Pool 本质是用来保存和复用临时对象,以减少内存分配,降低 GC 压力,比如需要使用一个对象,就去 Pool 里面拿,如果...

文章 2024-03-15 来自:开发者社区

Go语言GC(垃圾回收)的工作原理

在计算机编程中,内存管理是一项非常重要的任务。如果我们不及时释放不再使用的内存,就会造成内存泄漏,导致程序的性能下降甚至崩溃。为了解决这个问题,许多编程语言都引入了自动垃圾回收机制。在Go语言中,GC(垃圾回收)被设计成一种核心特性,它通过自动管理内存来提高程序的效率和安全性。本文将详...

文章 2024-03-12 来自:开发者社区

Go语言GC:详解GC的五个阶段

Go语言是一门支持自动内存管理的编程语言,它提供了一种称为“垃圾回收”(Garbage Collection,GC)的机制来自动管理内存。Go语言的垃圾回收器使用了一个称为“标记-清除”(Mark-Sweep)的算法,该算法被分成了五个不同的阶段。本文将详细介绍这五个阶段,并讨论它们如...

文章 2023-10-19 来自:开发者社区

Go语言GC:吞吐量和延迟的博弈

/ 深入剖析 Go 语言垃圾回收及 SetFinalizer 用法 /   一、概述Go 语言采用垃圾回收机制来自动回收无用的变量内存。本文将详细介绍 Go 语言垃圾回收的工作原理、分类算法以及 SetFinalizer 函数的用法。主要内容包括:Go 语言内存管理垃圾回收基本原理可达性分析算法生成式垃圾回收三色标记算法并发垃圾回收SetFinalizer 函数finalize 函数语....

Go语言GC:吞吐量和延迟的博弈
问答 2022-05-08 来自:开发者社区

Go 的 GC 有哪些问题?

Go 的 GC 有哪些问题?

问答 2022-05-08 来自:开发者社区

Go GC 的3个时机是什么?

Go GC 的3个时机是什么?

文章 2021-12-05 来自:开发者社区

【七天入门Go语言】 GC垃圾回收三色标记 | 第七天

目录GC三色标记法最后GCGC全称Garbage Collection目前主流的垃圾回收算法有两类,分别是追踪式垃圾回收算法(Tracing garbage collection)和引用计数法( Reference counting )。而三色标记法是属于追踪式垃圾回收算法的一种。追踪式算法的核心思想是判断一个对象是否可达,因为一旦这个对象不可达就可以立刻被 GC 回收了。那么如何判断一个对象是....

【七天入门Go语言】 GC垃圾回收三色标记 | 第七天
文章 2021-12-05 来自:开发者社区

Go并不需要Java风格的GC

像Go、Julia和Rust这样的现代语言不需要像Java c#所使用的那样复杂的垃圾收集器。但这是为什么呢?我们首先要了解垃圾收集器是如何工作的,以及各种语言分配内存的方式有什么不同。首先,我们看看为什么Java需要如此复杂的垃圾收集器。本文将涵盖许多不同的垃圾收集器话题:为什么Java依赖快速GC?我将介绍Java语言本身中的一些设计选择,它们会给GC带来很大压力。内存碎片及其对GC设计的影....

Go并不需要Java风格的GC

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

开发与运维

集结各类场景实战经验,助你开发运维畅行无忧

+关注