-
[置顶]软件接口设计怎么做?前后端分离软件接口设计思路
本文关于软件接口设计怎么做?前后端分离软件接口设计思路。好的系统架构离不开好的接口设计,因此,真正懂接口设计的人往往是软件设计队伍中的稀缺型人才。为什么在接口制定标准中说:一流的企业做标准,二流的企业...
-
[置顶]接口管理如何做?接口实现版本管理的意义和最佳方法
本文关于接口管理如何做?接口实现版本管理的意义和最佳方法。API版本管理的重要性不言而喻,对于API的设计者和使用者而言,版本管理都有着非常重要的意义。下面会从WEB API 版本管理的角度提供几种常...
-
[置顶]实现API管理系统的关键
下面将通过几个关键词的形式说明API管理的重要性和未来的实现方式。1.生命周期管理在整个API生命周期中更深入地集成所有工具将进一步提高生命周期循环的速度,而且更重要的是提供满足消费者需求的API。这...
-
Go语言之Once(go语言中文网)
sync.Once是sync包中的一个对象,它只有一个方法Do,这个方法很特殊,在程序运行过程中,无论被多少次调用,只会执行一次。1.适用场景:在一个进程之中,如果一个函数里面的一部分代码,希望在很多...
-
Go语言之goroutine的调度原理(goroutine状态)
一、关于并发的基础知识在讲goroutine的调度原理之前,有些与操作系统相关的知识,我们需要先知道,例如:1.什么是并发?并发:两个或两个以上的任务在一段时间内被执行。我们并不关心这些任务是否在同一...
-
Go语言锁的解读(go互斥锁和读写锁区别)
var l sync.Mutexvar a stringfunc f() { a = "hello, world" l.Unlock()}func main() { l.Lock() go f() l...
-
Go语言的结构体(go 结构体)
结构体Go语言中的基本数据类型可以表示一些事物的基本属性,但是当我们想表达一个事物的全部或部分属性时,这时候基本数据类型就无法满足需求了。Go语言提供了一种自定义数据类型,可以封装多个基本数据类型,这...
-
为什么要内存对齐?Go 语言有时也需要考虑对齐的问题(内存对齐和文件对齐)
CPU 访问内存时,并不是逐个字节访问,而是以字长(word size)为单位访问。比如 32 位的 CPU,字长为 4 字节,那么 CPU 访问内存的单位也是 4 字节。这么设计的目的,是减少 CP...
-
图解Go语言内存分配(go释放内存)
Go语言内置运行时(就是runtime),抛弃了传统的内存分配方式,改为自主管理。这样可以自主地实现更好的内存使用模式,比如内存池、预分配等等。这样,不会每次内存分配都需要进行系统调用。Golang运...
-
图解Go语言内存分配(go语言内存模型)
Go语言内置运行时(就是runtime),抛弃了传统的内存分配方式,改为自主管理。这样可以自主地实现更好的内存使用模式,比如内存池、预分配等等。这样,不会每次内存分配都需要进行系统调用。Golang运...
-
Go语言学习:字符串(go语言方法)
在Go中字符串作为内建类型,和C语言是不一样的。C中没有字符串类型, 所有需要通过字符数组来表示字符串,并以指针来传递。在Go中字符串是一个定长字符数组,所以当其创建之后就无法直接改变了。1、错误的字...
-
深入讲解Go语言中函数new与make的使用和区别(go make 参数)
大家都知道Go语言中的函数new与函数make一直是新手比较容易混淆的东西,看着相似,但其实不同,不过解释两者之间的不同也非常容易,下面这篇文章主要给大家介绍了关于Go语言中函数new与make区别的...
-
Golang WaitGroup实现原理和源码解析(golang语言适合做什么)
一、基本概念方便的并发,是Golang的一大特色优势,而使用并发,对sync包的WaitGroup不会陌生。WaitGroup主要用来做Golang并发实例即Goroutine的等待,当使用go启动多...
