在Goland中对goroutine协程断点调试

在Goland中对goroutine协程断点调试

  • 环境: Goland
    • 参考了 chatgpt 的回复
  • 进行断点调试的代码
package main

import (
	"fmt"
	"sync"
	"time"
)

// worker 模拟处理任务
func worker(id int, wg *sync.WaitGroup) {
	defer wg.Done() // 确保任务完成后通知 WaitGroup

	for i := 0; i < 5; i++ {
		fmt.Printf("Worker %d: Processing step %d\n", id, i)
		time.Sleep(500 * time.Millisecond) // 模拟耗时任务
	}

	fmt.Printf("Worker %d: Task completed\n", id)
}

func main() {
	var wg sync.WaitGroup

	// 启动 3 个 goroutine
	for i := 1; i <= 3; i++ {
		wg.Add(1)
		go worker(i, &wg)
	}

	fmt.Println("All workers started. Waiting for completion...")
	wg.Wait() // 等待所有任务完成
	fmt.Println("All workers completed.")
}
  • worker 函数内 fmt.Printf("Worker %d: Processing step %d\n", id, i) 这一行设置断点
  • Goland 配置调试
    在这里插入图片描述
    在这里插入图片描述
  • 当程序在断点暂停时,打开 Goroutines 面板,查看当前所有运行的 goroutine
    在这里插入图片描述
  • 使用调试工具中的 Step Over (F8)Step Into (F7),逐步分析协程的行为
  • 在 Variables 面板中查看每个协程的局部变量(如 id i 的值)
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/934388.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Sublime Text 64位:前端及全栈开发利器

本文还有配套的精品资源&#xff0c;点击获取 简介&#xff1a;Sublime Text作为一款高效的文本编辑器&#xff0c;在前端网页开发领域受到广泛青睐&#xff0c;特别是其64位版本在处理大型项目和高内存需求的场景下表现出色。编辑器内置Emmet插件&#xff0c;提供代码高亮、…

css矩形样式,两边圆形

废话不多说&#xff0c;代码如下&#xff0c;直接拷贝即可使用&#xff1a; index.vue文件 <template><view class"wrap"><view class"tabs"><view class"tab active"><view class"name">标签</view…

Spring Boot 3 中Bean的配置和实例化详解

一、引言 在Java企业级开发领域&#xff0c;Spring Boot凭借其简洁、快速、高效的特点&#xff0c;迅速成为了众多开发者的首选框架。Spring Boot通过自动配置、起步依赖等特性&#xff0c;极大地简化了Spring应用的搭建和开发过程。而在Spring Boot的众多核心特性中&#xff…

C# MVVM 牛牛的实现依赖注入和MVVM绑定(DependencyInjection+CommunityToolkit)

这段时间在网上发现搜索MVVM数据绑定时&#xff0c;发现很多都是最基本的数据绑定&#xff0c;完全没有考虑依赖注入的问题&#xff0c;这里实现一下我们的方法&#xff0c;让我们的数据绑定和依赖注入都变得简单起来。 安装资源包 首先我们要下载一下资源包DependencyInject…

最小二乘法拟合出二阶响应面近似模型

背景&#xff1a;根据样本试验数据拟合出二阶响应面近似模型&#xff08;正交二次型&#xff09;&#xff0c;并使用决定系数R和调整的决定系数R_adj来判断二阶响应面模型的拟合精度。 1、样本数据&#xff08;来源&#xff1a;硕士论文《航空发动机用W形金属密封环密封性能分析…

05-标准库开发-STM32-IIC协议

七、STM32中IIC协议 概述 Inter-Integrated Circuit (IIC)&#xff0c;也常称为I2C&#xff08;I squared C&#xff09;&#xff0c;是一种同步、串行、半双工通信总线协议。它主要用于连接低速外围设备到处理器或微控制器上&#xff0c;如MPU6050姿态传感器、OLED显示屏、存…

Java版-图论-最小生成树-Prim算法

实现描述 如图&#xff1a; Prim算法的基本思想是从一个顶点开始&#xff0c;逐步构建最小生成树。具体步骤如下&#xff1a; 随机选取一个顶点作为起始点&#xff0c;并将其加入最小生成树的集合中。从该顶点出发&#xff0c;选择一条边连接到其他未被访问的顶点中的最小权…

CSS学习记录09

CSS字体 通用字体族 在CSS中&#xff0c;有5个通用字体族&#xff1a; 衬线字体&#xff08;Serif&#xff09;- 在每个字母的边缘都有一个小的笔触。它们营造出一种形式感和优雅感。无衬线字体&#xff08;Sans-serif&#xff09;- 字体线条简洁&#xff08;没有小笔画&…

GB28181系列一:GB28181协议介绍

我的音视频/流媒体开源项目(github) GB28181系列目录 目录 一、GB28181协议介绍 二、GB28181交互流程 1、注册 2、观看视频 3、控制 4、SDP 5、媒体保活&#xff1a; 6、RTP 7、SIP URL 一、GB28181协议介绍 GB28181使用SIP协议&#xff0c;SIP协议参考我的SIP系列&a…

算法-字符串-3.无重复字符的最长子串

一、思路&#xff1a; 无重复针对唯一的元素首选哈希表方法 在字符串中找出最长字串——动态数组 二、使用的一些常见方法 1.HashMap a.声明 HashMap<Character,Integer> mapnew HashMap(); b.添加元素 map.put(s.charAt(i),i); c.查询是否有对应的元素存在并获取 m…

Windows Terminal ssh到linux

1. windows store安装 Windows Terminal 2. 打开json文件配置 {"$help": "https://aka.ms/terminal-documentation","$schema": "https://aka.ms/terminal-profiles-schema","actions": [{"command": {"ac…

海外的bug-hunters,不一样的403bypass

一种绕过403的新技术&#xff0c;跟大家分享一下。研究HTTP协议已经有一段时间了。发现HTTP协议的1.0版本可以绕过403。于是开始对lyncdiscover.microsoft.com域做FUZZ并且发现了几个403Forbidden的文件。 &#xff08;访问fsip.svc为403&#xff09; 在经过尝试后&#xff0…

OLLAMA+FASTGPT+M3E 大模型本地化部署手记

目录 1.安装ollama 0.5.1 2.下载大模型 qwen2.5 3b 3.开启WSL 4.更新wsl 5.安装ubuntu 6.docker下载 6.1 修改docker镜像源 6.2 开启WSL integration 7.安装fastgpt 7.1 创建fastgpt文件夹 7.2 下载fastgpt配置文件 8.启动容器 9.M3E下载 9.1 下载运行命令 9.2…

Android 10、11、12存储适配相关

AndroidQ(10)分区存储完美适配 - 简书前言 最近时间在做AndroidQ的适配&#xff0c;截止到今天AndroidQ分区存储适配完成&#xff0c;期间出现很多坑&#xff0c;目前网上的帖子大部分都是概述变更内容&#xff0c;接下来的几篇帖子都是对分区存储实际...https://www.jianshu.c…

Nanolog起步笔记-8-log解压过程(2)寻找meta

TOC 写在前面 如前。建立工程进行跟踪后&#xff0c;发现自己对Nanolog的理解还是太少了。 其过程&#xff0c;还是相对比较复杂。 以及有一些信息&#xff0c;这前的分析中&#xff0c;没有注意到。 本节&#xff0c;不向前推进&#xff0c;进行一定的总结与学习的准备。 另…

Java-22 深入浅出 MyBatis - 手写ORM框架3 手写SqlSession、Executor 工作原理

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 大数据篇正在更新&#xff01;https://blog.csdn.net/w776341482/category_12713819.html 目前已经更新到了&#xff1a; MyBatis&#xff…

Git:常用命令

一、查看当前分支 git branch 二、查看所有分支 git branch -a 三、切换到远程分支 git checkout origin/分支名 示例&#xff1a;git checkout origin/dev 四、拉取远程分支代码 git pull origin 分支名 示例&#xff1a;git pull origin dev 五、常用指令 查看暂存区…

算法1(蓝桥杯18)-删除链表的倒数第 N 个节点

问题&#xff1a; 给你一个链表&#xff0c;删除链表的倒数第 n 个节点&#xff0c;并且返回链表的头节点。 输入&#xff1a;head 1 -> 2 -> 3 -> 4 -> 5 -> null, n 2 输出&#xff1a;1 -> 2 -> 3 -> 5 -> null输入&#xff1a;head 1 ->…

H5接入Steam 获取用户数据案例 使用 OpenID 登录绑定公司APP账户 steam公开用户信息获取 steam webapi文档使用

官方文档地址 1.注册 Steam API Key&#xff1a; 你需要一个 Steam Web API Key&#xff0c;可以在 Steam API Key 页面 获取。https://steamcommunity.com/dev/apikey 这里开发做demo用自己steam账户的就好&#xff0c;后续上线要用公司的账户 2.使用 OpenID 登录&#xff…

TCP的“可靠性”(上)

目录 TCP的“可靠性”&#xff08;上&#xff09;确认应答&#xff08;可靠性传输的基础&#xff09;超时重传连接管理&#xff08;三次握手&#xff0c;四次挥手&#xff09; TCP的“可靠性”&#xff08;上&#xff09; 想必大家都或多或少的听说过TCP的特性&#xff1a;有连…