热门搜索:

Go 搜索结果

Go 语言标准库实现 HTTP 服务器:请求透传、环境变量读取与日志记录

本文详解如何使用 Go 语言标准库 net/http 构建一个包含四项功能的 HTTP 服务器:将客户端请求头透传至响应、从系统环境变量读取配置并写入 Header、记录客户端 IP 与状态码、以及实现 /healthz 健康检查接口。通过完整代码示例展示路由注册、并发安全及常见陷阱,帮助开发者快速掌握 Go Web 基础服务开发模式。

Go 语言标准库实现 HTTP 服务器:请求透传、环境变量读取与日志记录

Go语言TCP即时通讯聊天室:300行代码实现公聊与私聊

利用Go语言的net库、Channel并发机制和RWMutex锁,仅用约300行代码即可实现一个基于TCP协议的即时通讯聊天室。项目采用Server-Client架构,支持用户名修改、多人广播(公聊)及点对点私信功能,是掌握Golang高并发网络编程的优质实战案例。

Go语言TCP即时通讯聊天室:300行代码实现公聊与私聊

Go语言线上内存溢出排查:从JSON序列化陷阱到高效深拷贝

针对Go服务灰度期间因大量使用json.Marshal和Un进行对象拷贝导致的内存溢出(OOM)问题,文章详细记录了通过调整GOGC参数及利用gops结合pprof工具定位CPU和内存热点的分析过程。基于火焰图分析结果,指出大型结构体JSON序列化的性能瓶颈,并提供了使用Gob库实现高效深拷贝的替代代码方案,帮助开发者规避此类线上故障。

Go语言线上内存溢出排查:从JSON序列化陷阱到高效深拷贝

Go 语言协程与线程的核心区别及 GMP 调度模型解析

本文深入解析 Go 语言中协程(Goroutine)与系统线程的本质区别,涵盖调度方式、上下文切换速度及栈空间管理等核心差异。同时详细阐述 GMP 调度模型工作原理,解释 Go 如何实现高效的并发处理,帮助开发者理解底层机制并优化高并发应用设计。

Go 语言协程与线程的核心区别及 GMP 调度模型解析

Golang接口类型断言与类型-switch两种转型方式解析

在Golang开发中,接口转具体类型主要有两种方式。第一种是类型断言(Type Assertion),利用`if i, ok := obj.(T)`语法进行安全判断;第二种是类型-switch(Type Switch),利用`switch v := obj.(type)`配合case语句处理多种类型。本文通过几何图形的代码示例,详细解析这两种操作的入口、参数及完成状态。

Golang 实现文件 tar/tar.gz 压缩与解压操作指南

本文介绍如何利用 Go 标准库 archive/tar 进行文件压缩和解压。通过 bytes.Buffer 中转或直接读取 os.File,演示了将多个文件打包为 tar 格式并保存为 .tar.gz 文件的完整流程,以及从 tar 文件中遍历提取内容的操作方法,附带详细代码与运行结果。

Golang 实现文件 tar/tar.gz 压缩与解压操作指南

Golang 数据类型详解:变量声明、基础类型与运算符规则

本文系统梳理 Go 语言的基础数据类型与变量管理。涵盖关键字与标识符规范,详细解析 var 标准声明、短变量声明及 iota 枚举技巧;深入讲解整型、浮点型、字符串底层机制及 rune 处理;最后归纳算术、逻辑与位运算优先级,提供完整的 Golang 入门参考。

使用C语言从零实现简易三子棋游戏

本文讲解如何使用C语言中的二维数组、函数封装和循环逻辑来实现一个完整的三子棋小游戏。通过定义棋盘结构、处理玩家与电脑的对弈步骤以及完善胜负判定算法,帮助读者掌握C语言基础语法在实际项目中的应用。

使用C语言从零实现简易三子棋游戏

专题列表