Home avatar

<span style="font-weight: bold;">Hollis写字的地方...</span>

原子操作

atomic包

atomic 提供的原子操作能够确保任一时刻只有一个 goroutine 对变量进行操作,善用 atomic 能够避免程序中出现大量的锁操作。

类型别名和类型定义

类型别名

类型别名是用来给现有类型提供一个替代的名称。它并不会创建一个新的类型,而是给现有类型起一个别名,两者在类型系统中是完全相同的。类型别名的声明使用 type 关键字,并且使用赋值符号(=)来定义别名。

New和make的区别

在Go语言中,newmake 是两个用于分配内存的关键字,它们的作用有所不同。

new

  • new 用于创建一个指向新分配的零值的指针,返回的是指针。对于指针、引用类型(slice、map 和 channel),new 返回的是指针。
  • new 分配内存,但不对内存进行初始化,返回指针。
  • 主要用于初始化值类型(比如 struct)的内存空间。

示例:

0%