golang
已收录文章:1245篇
-
time.Ticker用于周期性定时任务,通过NewTicker创建并监听其通道C执行操作,需调用Stop()防止资源泄漏;可结合for循环控制执行次数或使用select与channel实现优雅退出,适用于监控、心跳等场景。236 收藏
-
Go语言中使用const定义不可变值,提升代码安全与可读性;支持单个、批量定义及iota枚举,如constPi=3.14、const(A=1BC)和const(Red=iotaGreenBlue)。235 收藏
-
Go1.11引入模块机制,解决依赖管理问题。通过GO111MODULE=on启用模块,初始化主模块并创建多模块结构,推荐扁平化布局,各子服务独立成模块,利用replace指令引用本地共享代码,结合gowork(Go1.18+)统一管理多模块依赖,提升协作效率与构建灵活性。235 收藏
-
Go语言适合编写高效稳定的运维脚本,利用os/exec执行系统命令、os包操作文件、time.Ticker实现定时任务,并通过goroutine并发处理;结合net/http调用API,使用crypto/ssh操作远程主机,推荐用slog统一日志,避免忽略错误处理,提升可维护性。235 收藏
-
Golang中使用httptest进行HTTP接口测试的核心是通过模拟请求和响应来验证处理器逻辑,避免启动真实服务器。它提供httptest.NewRequest创建请求、httptest.NewRecorder记录响应,结合http.Handler实现快速、隔离、可重复的测试,适用于各种场景如JSON请求、自定义Header,并推荐关注错误路径、隔离状态、充分断言以编写可靠测试。234 收藏
-
<p>使用net/rpc实现Go的RPC调用,通过HTTP传输。1.定义共享结构体和方法(如Multiply);2.服务端注册实例并暴露HTTP服务;3.客户端连接后调用远程方法;4.运行服务端和客户端,输出7*8=56。需注意方法导出、参数规范及gob编码限制。</p>234 收藏