Go1.13的坑:无法结束Goroutine
背景
- 本人作为一名SRE,想用Go模拟Cpu占用100% 1秒钟,但是在Go1.13上遇到了问题,1s后Goroutine不会停止。
- 只要用了
for{},Goroutine就无法结束,即使主Goroutine结束。 - 在Go1.14及以上版本解决了这个问题。
代码
package main
import (
//"fmt"
)
import "time"
func Test1() {
for {
//fmt.Println("hello") //随便在for循环中加个语句,就可以停止了
}
}
func main() {
go Test1()
time.Sleep(1 * time.Second)
}
其他参考文章
- https://blog.51cto.com/u_15023263/3788803
Go1.13的坑:无法结束Goroutine的更多相关文章
- centos7.5上安装go1.13.4
一.安装 1.下载go1.13.4.linux-amd64.tar.gz 先进入官网https://golang.google.cn/ 再 https://golang.google.cn/doc/i ...
- 【linux】【Go】Centos7安装go1.13环境
前言 Go(又称Golang)是Google开发的一种静态强类型.编译型.并发型,并具有垃圾回收功能的编程语言. 罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pi ...
- go1.13 mod 实践和常见问题
实践建议 0,go mod 要求所有依赖的 import path 的path 以域名开头,如果现有项目转1.13的go mod 模式,且不是以域名开头则需要修改. eg: code.be.mingb ...
- Go1.13 标准库的 http 包爆出重大 bug,你的项目中招了吗? 原创: 王亚楼 Go语言中文网 今天
Go1.13 标准库的 http 包爆出重大 bug,你的项目中招了吗? 原创: 王亚楼 Go语言中文网 今天
- Android程序猿必须警示的13个坑
Android开发中,犯错是难免的,不犯错是不正常的,但是犯了错以后,我们必须时刻谨记这些坑,避免再次被坑,下面小编整理了13个,日常工作中,比较常见且易犯的错误,分享给大家. 1.类的 ...
- golang select 退出结束goroutine
开启了多个协程 其中一个协程满足条件后终止select, 原以为其他的协程会在后台系统中继续悄悄运行 直到主进程关闭而关闭 . 做一实验发现select 监听退出 会关闭所有监听的goroutine ...
- 升级安装go1.13.5
运行文件时报错 verifying github.com/mattn/go-isatty@v0.0.10-0.20190818123653-bf9a1dea1961/go.mod: github.co ...
- 个人安装GO1.13.6版本指南手册之搭建环境
因好奇而走进go语言,让你不在只闻其声,不见其形. https://golang.org/doc/install:这里是go语言的官网文档.吃不透英文,终究会被限制在有限的区域,一词词的吃透. 安装包 ...
- Go1.14发布了,快来围观新的特性啦
如期而至,Go1.14发布了,和往常一样,该版本保留了Go 1兼容性的承若,这个版本的大部分更新在工具链 .运行时库的性能提升方面,总的来说,还是在已有的基础上不断优化提成,大家期待的泛型还没有到来, ...
- [终极巨坑]golang+vue开发日记【一】,环境搭建篇
写在前面 这个golang+vue大部分的内容是基于bydmm(橙卡)大佬的视频学来的,我在这里只是做一下个人开发的笔记,就是图一个乐,毕竟我只是个应届毕业生,如果真的要学请:bydmm的b站空间. ...
随机推荐
- 开源相机管理库Aravis例程学习(四)——multiple-acquisition-signal
目录 简介 例程代码 函数说明 g_main_loop_new g_main_loop_run g_main_loop_quit g_signal_connect arv_stream_set_emi ...
- linux Makefile 如何将生成的 .o 文件放到指定文件夹
一.Makefile文件 为了方便分析,直接上文件,Makefile 文件中的内容如下所示: # # Makefile # 编译的.o文件和.c文件在同一路径下 # $(info "star ...
- 升级版header吸顶后滑动变色(二)
<van-nav-bar fixed id="opacityHeader" //拉伸状态显示的header title="赛事" ...
- Maven的概述
Maven的概述 @ 目录 Maven的概述 2. 依赖 3. Maven 的工作机制 3. 最后:感谢 Java 项目开发过程中,构建指的是使用『原材料生产产品』的过程. 原材料 Java 源代码 ...
- 前端调用DRI后端API出现跨域资源共享(CORS)问题解决办法
目录 1. 引言 2. 跨源资源共享和实现方法 3. 在Django项目中配置django-cors-headers库 Reference 1. 引言 在进行后端API开发时,有时会遇到"跨 ...
- 01. go-admin的下载与启动
目录 一.介绍 二.新建空文件夹 三.获取后台源码并启动 1.下载编译go代码 2.配置命令到goland IDE ,debug启动 四.获取前端ui源码并启动 1.下载编译go代码 2.启动项目 * ...
- win11通过注册表禁用鼠标右键
本经验分为5个步骤,详情如下. 工具/原料 华硕K5 win11专业版21H2 注册表22000.556 方法/步骤 同时按下"win"+"R"键,打开运行 ...
- nginx通过geo做访问限制
user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; eve ...
- ftp和tftp有什么区别
TFTP和FTP都是文件传输协议,但它们在很多方面存在明显的区别. 安全性:FTP协议使用的是明文传输,而TFTP协议使用的是UDP协议,没有使用TCP,所以不提供验证. 传输方式:FTP协议使用的是 ...
- Mysql 5.7 及以上版本修改密码
登录数据后.选择 mysql 数据库 use mysql; 修改密码 update user set authentication_string=PASSWORD("mynewpasswor ...