收藏本版 |订阅

Go语言论坛 今日: 0|主题: 102|排名: 61 

  • Go 语言中的值类型和指针类型区别对比分析
    目录✅ 一、值类型 vs 指针类型 — 本质区别✅ 二、本质理解:变量保存的是什么?✔ 值类型(int、float、struct、array 等)✔ 指针类型(*int、*struct、*MyType)✅ 三、内存示意图(最直观)✔ 值类型✔ 指针类型✅ 四、函数传参时的区别(非常重要)值类型:传值,拷贝一份指针类型:传地址,修改原变量✔ 1. 需 ...
    058 巨草 发表于 2025-11-21 Go语言论坛
  • 浅谈Go语言高并发处理思路
    目录1、场景描述2、方案演进2.1、直接使用goroutine2.2、缓冲队列2.3  队列+工作池3、代码实现思路:4、完整代码5、资源消耗5.1  CPU消耗对比5.2  内存消耗对比6、代码分析Go语言作为新兴的语言,最近发展势头很是迅猛,其最大的特点就是原生支持并发。它使用的是“协程(goroutine)模型”,和传 ...
    015 么无力再爱谁 发表于 2025-11-21 Go语言论坛
  • Go语言地址引用的问题解决
    目录1、channel2、slice1、channel 先看以下代码: package main import "fmt" func main() { ch1 := make(chan int, 3) ch2 := ch1 ch1 <- 123 ch2 <- 456 fmt.Println(ch1, ch2) //输出地址是否一样? TODO:打印结果是? fmt.Println(<-ch2, <-ch1) // ch2中的数据是:456; ch1中的数据是123;TODO:打印结 ...
    051 杨杨家的鹦鹉 发表于 2025-11-21 Go语言论坛
  • Golang特殊init函数的实现实例
    目录介绍使用场景介绍 init()函数是一个特殊的函数,存在一下特性 不能被其它函数调用,而是子main()函数之前自动调用不能作为参数传入不能有传入参数和返回值 作用: 对变量进行初始化检查/修复程序状态注册运行一次计算 以下是<<the way to go>>的解释: 变量除了可以在全局声明中初始化,也可以在 init ()函数中初始化。 ...
    026 刘继承 发表于 2025-11-20 Go语言论坛
  • goland 断点调试显示“变量不可用”的问题解决
    目录问题解决补充问题 golang 版本升级到1.25之后,进行debug调试,调试面板显示变量不可用 解决 1、更新dlv版本 go get -u github.com/go-delve/delve/cmd/dlv@latest go install github.com/go-delve/delve/cmd/dlv@latest 2、查看delve版本 $ dlv version Delve Debugger Version: 1.25.2 Build: $Id: af3df277866d7175 ...
    065 墨邪 发表于 2025-11-20 Go语言论坛
  • 基于Golang构建一个网络漏洞扫描器
    目录1. 项目设置创建漏洞扫描器配置包和环境网络扫描的伦理考量与风险2. 简单端口扫描器低级端口扫描实现使用net包对首次扫描进行测试3. 从这里开始改进:多线程扫描为何最初的版本运行缓慢添加线程支持多线程结果4. 添加服务检测服务旗标抓取(Banner Grabbing)实现识别正在运行的服务基本版本检测5. 漏洞检测实现编写简 ...
    017 培彦 发表于 2025-11-19 Go语言论坛
  • Go-Gin Web框架的实现示例
    目录1. 环境准备1.1 Go 环境安装1.2 设置 Go 环境变量2. 项目初始化2.1 创建项目目录2.2 初始化 Go 模块2.3 安装 Gin 框架3. 项目结构4. 基础示例4.1 创建入口文件4.2 添加控制器4.3 配置路由4.4 添加中间件5. 完整应用示例6. 常用功能示例6.1 查询参数处理6.2 表单处理6.3 文件上传6.4 分组路由7. 数据库集成(以 GORM 为 ...
    056 自命不凡 发表于 2025-11-18 Go语言论坛
  • 使用Go开发一个文件同步小工具(附源码)
    目录它是怎么工作的为什么说它"佛系"使用须知(别踩坑)改进建议(留给未来的你)源码奉上结语"你复制,我粘贴;你改了,我跟着动。" —— FileSync 的座右铭 大家好!今天我要给大家介绍一个我最近写的小玩具——FileSync。它不是什么高大上的分布式同步系统,也不是什么带 GUI 界面的炫酷软件,而是 ...
    091 石头崽崽 发表于 2025-11-18 Go语言论坛
  • 深入详解如何使用Go实现端口扫描器
    目录一、故事从一个"好奇"开始二、核心思路:生产者 + 消费者模型三、关键 Go 知识点解析1. goroutine:轻量级线程2. channel:安全通信管道3. sync.WaitGroup:等待所有任务完成4. net.DialTimeout:带超时的 TCP 连接5. 命令行参数解析6. 错误处理 & 输入校验四、运行效果预览五、完整源码奉上!六、结语:技术无罪,滥用 ...
    081 月下无赖 发表于 2025-11-18 Go语言论坛
  • GO语言zap日志库理解和使用方法示例
    目录1. zap日志库介绍2.安装zap库3.配置日志记录器3.1 Logger3.2 Sugared Logger4. 定制logger4.1 将日志写入文件4.2 将JSON Encoder更改为普通的Log Encoder4.3 更改时间编码并添加调用者详细信息4.4 将日志输出到多个位置5. 使用Lumberjack进行日志切割文档5.1 安装5.2  zap logger种加入Lumberjack6 ...
    068 李光磊 发表于 2025-11-17 Go语言论坛
  • 一篇文章让你学会Go语言循环语句
    目录概述for 循环1. for 循环基本语法2. for 循环的嵌套3. range 循环while 循环break 和 continue1. break2. continue总结概述 Go 语言是一种静态强类型、编译型、并发型编程语言。在编程中,循环语句是执行重复操作的重要手段。Go 语言提供了几种循环语句,包括 for 循环、while 循环和 break、continue 等跳转语句。本文 ...
    099 再世孔明三毛 发表于 2025-11-17 Go语言论坛
  • golang zap日志库的具体使用
    目录一、日志是什么二、 Sugared Logger vs Logger三、 zap的基本配置zap配置包含哪几方面四、 自定义loggercoreoptions五、 使用Lumberjack进行日志切割归档一、日志是什么 首先需要明确什么是日志 在程序运行的过程中,我们不可能总是能在控制台看到全部信息 因为 程序是黑盒运行的 一旦程序启动,内部状态、变量值、执行 ...
    029 樱桃小晰瓜 发表于 2025-11-16 Go语言论坛
  • go语言基于Session和Redis实现短信验证码登录
    目录基于 session 实现短信验证码登录短信验证码登录发送验证码用户登录创建用户登录拦截器数据脱敏Session 集群共享问题基于 Redis 实现短信验证码登录短信验证登录发送验证码用户登录创建用户配置登录拦截器基于 session 实现短信验证码登录 package main import ( "fmt" "log" "math/rand" ...
    055 浅见 发表于 2025-11-16 Go语言论坛
  • Go语言中如何进行数据库查询操作
    查询函数QueryRow和Query详细对比 特性QueryRowQuery返回值数量1个:*sql.Row2个:(*sql.Rows, error)错误处理时机在Scan()时处理立即处理 + 遍历后检查适用场景确定只有单行结果可能有多行结果资源释放自动管理必须手动调用rows.Close()结果遍历直接调用Scan()循环rows.Next() + rows.Scan()空结果处理返回sql.E ...
    075 得失皆成过往 发表于 2025-11-15 Go语言论坛
  • 深入理解Go之==的使用
    目录概述类型基本类型复合类型引用类型接口类型使用type定义的类型不可比较性谈谈map总结概述 相信==判等操作,大家每天都在用。之前在论坛上看到不少人在问 golang ==比较的结果。看到很多人对 golang 中==的结果不太了解。确实,golang 中对==的处理有一些细节的地方需要特别注意。虽然平时可能不太会遇到,但是碰到 ...
    090 猴多猴多嘚猴啊 发表于 2025-11-14 Go语言论坛
  • GO语言中gox交叉编译的实现
    目录一、安装二、使用三、遇到的问题1、开启CGO2、修改环境变量最近在工作中使用GO语言进行编码开发,因为项目中的环境时arm64,所以总是需要交叉建议,在arm下才能正确运行,GO语言还是非常强大的,在windows下就可以交叉编译各个环境的二进制文件,Gox是Go交叉编译的一种简单,简洁的工具,其行为类似go build。 一、安装 ...
    067 刘志礼 发表于 2025-11-14 Go语言论坛
  • golang中gob的实现示例
    Gob 是 Go 自己的以二进制形式序列化和反序列化程序数据的格式;可以在 encoding 包中找到。这种格式的数据简称为 Gob (即 Go binary 的缩写)。类似于 Python 的 "pickle" 和 Java 的 "Serialization"。 Gob 通常用于远程方法调用(RPCs,参见 15.9 的 rpc 包)参数和结果的传输,以及应用程序和机器之间的数据传输。它和 ...
    010 铅球 发表于 2025-11-14 Go语言论坛
  • go build 移除路径信息的实现步骤
    用了一段时间的Golang之后,一直有个困惑,为什么报错的时候提示是这样的。 panic: 文件不存在 goroutine 1 [running]: main.findFile(...) /Users/Aries/Desktop/projec/main.go:4 main.main() /Users/Aries/Desktop/projec/main.go:8 +0x3a exit status 2 作为一名开发人员,总感觉不是那么安全和严谨。报错信息里包含 ...
    031 左浩 发表于 2025-11-14 Go语言论坛
  • Go 获取当前运行文件的目录的多种方法实现
    目录概述方法一:使用os.Executable方法二:使用runtime.Caller方法三:处理go run特殊情况最佳实践建议高级技巧:处理符号链接总结概述 在Go语言开发中,经常需要获取当前执行文件的目录路径,这在进行配置文件加载、资源文件访问或日志文件存储等场景中尤为重要。本文将详细介绍几种可靠的方法来获取当前运行文件的目录路 ...
    049 劉文明 发表于 2025-11-14 Go语言论坛
  • 使用Redis实现轻量级消息队列
    目录方式一  Redis Pub/Sub(适用于广播通知)方式二:Redis List(适用于任务队列)方式三:Redis Stream(推荐,支持持久化 + 消费组)总结使用消息中间件如RabbitMQ或kafka虽然好,但也给服务器带来很大的内存开销,当系统的业务量,并发量不高时,考虑到服务器和维护成本,可考虑使用Redis实现一个轻量级的消息队 ...
    042 初夏如轩 发表于 2025-11-14 Go语言论坛
  • 下一页 »

    快速发帖

    还可输入 180 个字符
    您需要登录后才可以发帖 登录 | 立即注册

    本版积分规则

    相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

    Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

    在本版发帖返回顶部