排序
Go 语言中结构体 Setter 方法的正确使用姿势
本文旨在解释 Go 语言中结构体方法(特别是 setter 方法)中使用值接收者和指针接收者的区别。通过示例代码和地址分析,帮助开发者理解为什么值接收者无法修改原始结构体,而指针接收者可以。掌...
Codeql如何分析cookie未启用httponly的问题
序 今天我们利用codeql分析下“cookie未启用httponly“这类的安全问题,由此加深自己对codeql的使用。如果效果良好,可以考虑修复vulnerability-goapp的其他漏洞。 分析go程序时必须额外下载cod...
Go语言如何获取结构体的所有方法?
Go语言不像PHP那样直接提供获取结构体所有方法的函数。然而,我们可以利用Go语言强大的反射机制(reflect包)来实现类似的功能。本文将演示如何使用反射来遍历并获取Go结构体的所有方法。 与PHP的...
结构体作为函数参数怎么传递 值传递与引用传递性能比较
值传递复制整个结构体,引用传递仅传递地址。1. 值传递适合结构体小或需副本的情况,但性能开销大;2. 引用传递避免复制,提升性能,适合大型结构体或需修改原结构体;3. const 引用传递结合性...
一文聊聊Redis中的epoll和文件事件
本篇文章给大家介绍一下redis中的文件事件,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 事件驱动 Redis 服务器是事件驱动程序,分为文件事件和时间事件 文件事件:socket...
Linux readdir与glob函数的比较
readdir 和 glob 是 Linux 系统下用于处理文件和目录的两个不同功能的函数,它们在使用方式和适用场景上各有特点。 readdir readdir 是一个符合 POSIX 标准的库函数,主要用来读取指定目录中的...
为什么在Golang中要慎用反射 分析反射带来的性能损耗与维护问题
在go语言中应慎用反射,因为它影响性能并增加维护成本。反射在运行时动态解析类型信息,导致类型检查、转换及方法调用效率低下,且无法被编译器优化,尤其在高频循环中性能损耗显著;此外,反射...
你必须了解Linux的命名空间
本篇文章给大家带来了关于linux命名空间的相关知识,命名空间提供了虚拟化的一种轻量级形式,使得我们可以从不同的方面来查看运行系统的全局属性,希望对大家有帮助。 一、基本概念 命名空...
Golang构建Serverless工作流的技巧 分享AWS Step Functions集成
使用 golang 构建 serverless 工作流时,结合 aws step functions 的核心优势在于其作为“有状态的工作流服务”,能有效协调 lambda 函数、fargate 任务、sns 消息等 serverless 组件,并自动处...
Go 接口详解:理解类型、接口与多态
本文旨在帮助开发者理解 Go 语言中的接口概念,通过清晰的解释和示例,阐述接口的定义、作用以及如何在 Go 语言中实现多态,从而更好地掌握 Go 语言的面向接口编程思想。 什么是 Go 接口? 在 G...