【Go简明手册】Go并发编程——channel channel 是goroutine 之间互相通讯的东西。类似我们 Unix 上的管道(可以在进程间传递消息),用来 goroutine 之间发消息和接收消息。其实,就是在做 goroutine 之间的内存共享。channel 是类型相关的,也就是说一个 channel 只能传递一种类型的值,这个类型需要在 channel 声明时指定。 声明与初始化 channel 的一般声明形式:var ch 2023-10-27 B_Code > GO > Go简明手册 > 并发与并行 > channel #Code/Go #Go #Go简明手册 #手册/Go简明手册
【Go简明手册】Go并发编程 知识点 并发与并行 协程 goroutine channel select 并发编程 并发与并行 并发指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,通过 CPU 时间片轮转使多个进程快速交替的执行。而并行的关键是你有同时处理多个任务的能力。并发和并行都可以是很多个线程,就看这些线 2023-10-27 B_Code > GO > Go简明手册 > 并发与并行 #Code/Go #Go #Go简明手册 #手册/Go简明手册
【Go简明手册】错误处理 错误处理* 错误处理是任何语言都需要考虑到的问题,而 Go 语言在错误处理上解决得更为完善,优雅的错误处理机制是 Go 语言的一大特点。 error Go 语言引入了一个错误处理的标准模式,即 error 接口,该接口定义如下: 123type error interface { Error() string} 对于大多数函数,如果要返回错误,可以将 error 2023-10-27 B_Code > GO > Go简明手册 > Go语言顺序编程 > 错误处理
【Go简明手册】Go顺序编程--流程控制 [toc] Go 语言提供的流程控制语句包括 if、switch、for、goto、select,其中 select 用于监听 channel(通道)在讲解通道的时候再详细介绍。 if 语句 语法: 1234567if optionalStatement1; booleanExpression1 { block1} else if optionalStatement2; 2023-10-27 B_Code > GO > Go简明手册 > Go语言顺序编程 > 流程控制 #Code/Go #Go #Go简明手册
Go顺序编程——类型转换 [toc] 类型转换 Go 语言提供了一种在不同但相互兼容的类型之间相互转换的方式,这种转换非常有用并且是安全的。但是需要注意的是在数值之间进行转换可能造成其他问题,如精度丢失或者错误的结果。以下是类型转换的语法: resultOfType := Type(expression) 几个例子: 1234x := int16(2345) // 声明一个类型为int16的整数,其值为 2023-10-27 B_Code > GO > Go简明手册 > Go语言顺序编程 > 类型转换 #Go简明手册
Go顺序编程——函数的多返回值 概述: Golang 函数如何返回多个变量 2023-10-27 B_Code > GO > Go简明手册 > Go语言顺序编程 > 函数的多返回值 #Code/Go #Go
Go顺序编程——switch语句 Go 语言中 switch 分支既可用于常用的分支就像 C 语言中的 switch 一样,也可以用于类型开关,所谓类型开关就是用于判断变量属于什么类型。但是需要注意的是 Go 语言的 switch 语句不会自动贯穿,相反,如果想要贯穿需要添加 fallthrough 语句。表达式开关 switch 的语法如下: 123456switch optionalStatement; optionalExp 2023-10-27 B_Code > GO > Go简明手册 > Go语言顺序编程 > switch语句
Go顺序编程——Go语言顺序编程 知识点 流程控制 函数 类型转换 类型断言 error defer 和 panic 文章列表 【Go简明手册】错误处理 【Go简明手册】Go顺序编程–函数的多返回值 【Go简明手册】Go顺序编程–类型转换 【Go简明手册】Go顺序编程–流程控制 【Go简明手册】panic和defer 【Go顺序编程】README 【Go简明手册】Go顺序编程–流程控制 2023-10-27 B_Code > GO > Go简明手册 > Go语言顺序编程 #Code/Go #Go #Go简明手册
【Go简明手册】panic和defer panic 和 recover panic() 函数用于抛出异常,recover() 函数用于捕获异常,这两个函数的原型如下: 12func panic(interface{})func recover() interface{} 当在一个函数中调用 panic() 时,正常的函数执行流程将立即终止,但函数中之前使用 defer 关键字延迟执行的语句将正常 2023-10-27 B_Code > GO > Go简明手册 > Go语言顺序编程 > panic和defer #Code/Go #Go