摘要: 在并行编程中,处理循环迭代时常用的并发模型有几种: Worker Pool(工作池): 描述:创建固定数量的工作 goroutine,这些 goroutine 从共享的任务队列中获取任务并执行。 优点:控制并发量,避免过多 goroutine 导致资源耗尽。 示例: package main imp 阅读全文
posted @ 2024-09-13 14:26 你脑子有bug 阅读(17) 评论(0) 推荐(0)
摘要: Goroutines 是 Go 语言中的核心并发原语。它们是由 Go 运行时管理的轻量级线程,能够以更高效的方式进行并发操作。 基本概念 轻量级线程: Goroutines 是比操作系统线程更轻量的执行单元。它们的启动和管理开销很小,可以同时运行成千上万的 Goroutines。 调度: Go 运行 阅读全文
posted @ 2024-09-12 18:17 你脑子有bug 阅读(64) 评论(0) 推荐(0)
摘要: 类型断言: 是Go 语言中用于将接口类型的值转换为具体类型的机制。它允许在运行时检查一个接口变量是否持有特定类型的值,并在需要时将其转换为该类型。 基本语法 有两种形式的类型断言: 类型断言表达式: value, ok := x.(T) x 是一个接口类型的变量。 T 是你想要断言的目标类型。 va 阅读全文
posted @ 2024-09-12 18:08 你脑子有bug 阅读(46) 评论(0) 推荐(0)
摘要: 在 Go 语言中,channel 是一种用于在 goroutine 之间传递数据和进行同步的核心工具。它们使得并发编程变得更加高效和安全。以下是有关 channel 的一些基本知识和使用场景: 1. 创建 Channel 可以使用内置的 make 函数创建一个 channel。例如: ch := m 阅读全文
posted @ 2024-09-12 17:35 你脑子有bug 阅读(180) 评论(0) 推荐(0)
摘要: sync.WaitGroup 是 Go 标准库中的一个同步原语,用于协调多个 goroutine 的执行,确保它们在主线程或其他 goroutine继续执行之前完成任务。 sync.WaitGroup 的用法 1. 创建 WaitGroup 实例 在开始 goroutine 执行之前,需要创建一个 阅读全文
posted @ 2024-09-12 17:15 你脑子有bug 阅读(542) 评论(0) 推荐(0)
摘要: 在 Go 中,有缓存的 channel(也称为带缓冲的 channel)和普通的 channel(无缓冲 channel)在行为上有显著的区别: 无缓冲 Channel 定义:无缓冲 channel 是一种在发送和接收操作时必须匹配的 channel。即,发送操作会被阻塞,直到有接收方准备好接收数据 阅读全文
posted @ 2024-09-12 16:57 你脑子有bug 阅读(435) 评论(0) 推荐(0)
摘要: Channel 是 Go 语言中并发编程的核心工具之一,主要用于解决以下问题: 1. 数据传递和通信 在并发编程中,不同的 goroutine 可能需要交换数据。使用 channel 可以安全地在 goroutine 之间传递数据,而无需显式地使用锁。channel 提供了类型安全的通信机制,使得数 阅读全文
posted @ 2024-09-12 16:48 你脑子有bug 阅读(60) 评论(0) 推荐(0)
摘要: 在 Go 语言中,channel 是一种用于在 goroutine 之间进行通信和同步的工具。它允许一个 goroutine 发送数据到 channel,另一个 goroutine 从 channel 接收数据,从而实现并发编程中的数据交换。 Channel 的关键特性 类型安全:每个 channe 阅读全文
posted @ 2024-09-12 16:38 你脑子有bug 阅读(84) 评论(0) 推荐(0)
摘要: 下载了官网最新的goland安装包,安装完成之后,goland却无法打开了。 一番排查之后,发现是之前安装的版本有一些残留的配置项。配置项中有些文件的已经不存在了,需要去手动清理 解决方法 第一步:在访达中打开 软件源文件 打开 Finder(访达) --> Applications(应用程序) - 阅读全文
posted @ 2023-11-21 10:44 你脑子有bug 阅读(804) 评论(0) 推荐(0)
摘要: version: "3.8"services: redis: container_name: redis image: redis:alpine3.8 ports: - "6379:6379" volumes: - /Users/chen.yuhao/Desktop/lnmp/redis/redis 阅读全文
posted @ 2021-05-08 10:30 你脑子有bug 阅读(270) 评论(0) 推荐(0)