快乐的程序员
go datetime工具 go datetime工具
golang 对datetime进行封装封装时间相关的操作1.func AddSecond(t time.Time, second int64) time.Time在指定时间上增加秒 示例 t1 := time.Now() t2 := Ad
2024-03-12
GO RabbitMQ GO RabbitMQ
安装 通过homebrew安装RabbitMQbrew install rabbitmq 2.启动 rabbitmq-server 3.图形化界面localhost:15672 需要登录,可以用:username:guest,passw
2024-03-12
go连接rocketmq go连接rocketmq
1.安装rocketmq前提:需要安装java docker安装rocketmq (1)检查有哪些可用的rocketmq镜像 docker search rocketmq (2)拉取镜像,用第一个镜像 docker pull rock
2024-03-12
GO面试 GO面试
1.defer执行顺序先定义,后执行defer在panic之前执行defer虽然是在return的时候才执行,但是如果参数是函数,会先执行参数,并且把结果放到调用栈里面 2.for循环的时候千万不要用tmp的指针 3.array赋值是只拷贝
2024-03-12
go 垃圾回收那些事儿 go 垃圾回收那些事儿
1 垃圾回收算法有哪些1.1 引用计数算法思想:每个单元维护一个域,保存其它单元指向它的引用数量(类似有向图的入度)。当引用数量为 0 时,将其回收。引用计数是渐进式的,能够将内存管理的开销分布到整个程序之中。C++ 的 share_ptr
2024-03-12
Go struct 对象能比较吗 Go struct 对象能比较吗
同一个struct的两个实例能不能比较可能可以,也可能不可以。当struct中包含的属性都是可比较类型,则可以。 package main import "fmt" type TestStruct1 struct { Name str
2024-03-07
GO 易考易错点 GO 易考易错点
1 Go下划线的作用Go下划线其实有两种作用。1.忽略变量。这个应该是最简单的用途。比如某个函数返回三个参数,但是我们只需要其中的两个,另外一个参数可以忽略,这样的话代码可以这样写:v1, v2, _ := function(...)还有一
2024-03-07
go get 拉取代码找不到的问题 go get 拉取代码找不到的问题
go get 或者go install拉取代码的时候报这个错,一般是因为这个代码仓库是私有仓库,需要配置环境变量和git 配置环境变量GOPRIVATE==github.com/ZBIGBEAR 设置多个的话,用英文豆号隔开。 配置gi
2024-03-04
Go与java,python区别 Go与java,python区别
为什么要设计GOGo设计者们希望有这样一种语言,既要有C语言的简单、高效,又要有java语言的内置GC、面向对象,还要有高效率、高并发,因此google工程师设计出了GO语言。 GO语言有什么特点 虽然是面向对象,但是没有继承和多态 强一致
2024-03-02
Go协程管理 Go协程管理
Go协程管理go语言最大的特点就是高并发,实现方式就是协程。今天就来说说go协程那些事儿。 什么是协程一句话概括,协程是go语言自己定义的一个轻量级的、可独立运行的代码块。类比操作系统层面的线程,我们可用把一个协程看作是一个线程,平时我们是
2024-03-01
一文读懂go context 一文读懂go context
1.写在前面go context相信大家经常遇到,也知道一些用法。今天主要是阅读一下go context的源码 go 1.21.1的context的源码只有一个文件。源代码785行,去掉注释后有效代码497行。 package main
2024-02-28
6 / 6