IT入门 > 教程 > Go语言教程 >
  • Go泛型实践 - 交换两个值 日期:2025-10-15 点击:2445 Go泛型

    在Go里运用泛型能实现交换两个值的功能,不用再考虑值的类型。下面是具体的实现方法。 package mainimport "fmt"// 泛型函数用于交换两个值func swap[T any](a, b T) (T, T) { return b, a}func main() {...

  • Go泛型实践 - 判断切片是否包含元素 日期:2025-10-15 点击:4769 Go泛型

    使用Go泛型能判断切片里是否包含某个元素,不用考虑切片元素的类型。 package mainimport "fmt"// 泛型函数用于判断切片是否包含元素func contains[T comparable](slice []T, elem T) bool { for _, v := ran...

  • Go泛型实践 - 去重函数 日期:2025-10-15 点击:3392 Go泛型

    利用Go泛型可实现切片去重功能,不用考虑切片元素的类型。 package mainimport "fmt"// 泛型函数用于切片去重func unique[T comparable](slice []T) []T { result := make([]T, 0) seen := make(map[T]bool) for _, v :=...

  • Go语言中什么是并发 - 概念介绍 日期:2025-10-15 点击:1145 并发

    在Go语言里,并发是指程序里能够同时执行多个任务的能力。并发和并行不同,并行是指多个任务真正同时运行,而并发是在一段时间内交替执行多个任务。 package mainimport "fmt"func prin...

  • Go语言中什么是并发 - goroutine使用 日期:2025-10-15 点击:1435 并发

    在Go语言中,goroutine是实现并发的关键。goroutine是一种轻量级的线程,由Go运行时管理。 package mainimport "fmt"func sayHello() { fmt.Println("Hello!") // 输出Hello!}func main() { go sayHello() // 等待一段时...

  • Go语言的goroutine并发方案 日期:2025-10-15 点击:8933 并发

    Go语言中goroutine是实现并发的关键。它是一种轻量级的线程,由Go运行时管理。使用goroutine可以轻松实现并发操作。 package mainimport ( "fmt")func printNumbers() { for i := 1; i 注意:如果主函数结...

  • Go语言的channel并发通信方案 日期:2025-10-15 点击:1034 并发

    Go语言中的channel用于在goroutine之间进行通信和同步。它可以安全地在多个goroutine之间传递数据。 package mainimport ( "fmt")func sendData(ch chan int) { for i := 0; i 注意:使用完channel后,最好主动关...

  • Go语言goroutine的基本概念 日期:2025-10-15 点击:5594 并发

    在Go语言里,goroutine是轻量级的执行线程,由Go运行时管理。和传统线程比,它开销小,能高效创建大量goroutine。 package mainimport "fmt"func hello() { fmt.Println("Hello from goroutine!") // 运行结果:...

  • Go语言goroutine的使用示例 日期:2025-10-15 点击:4415 并发

    可以通过在函数调用前加go关键字启动goroutine。下面是一个多个goroutine并发执行的例子。 package mainimport ( "fmt" "time")func printNumbers() { for i := 1; i 使用time.Sleep等待goroutine执行不是好方法,...

  • Go语言CSP并发模型简介 日期:2025-10-15 点击:7369 并发

    Go语言的CSP(Communicating Sequential Processes)并发模型是一种通过通信来共享内存的并发编程模式。在CSP模型中,并发实体(goroutine)之间通过通道(channel)进行通信。 package mainimport ( "...