E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
goroutine
golang标准库 context的使用
本文索引问题引入context包简介示例问题引入
goroutine
为我们提供了轻量级的并发实现,作为golang最大的亮点之一更是备受推崇。
weixin_30681615
·
2023-08-19 07:23
golang
深度解密Go语言之context
什么是contextGo1.7标准库引入context,中文译作“上下文”,准确说它是
goroutine
的上下文,包含
goroutine
的运行状态、环境、现场等信息。
donnyxia1128
·
2023-08-19 07:22
技术
数据库
服务器
go
深入解读Golang标准库中context包的源码
context包可谓是Golang语言的一个重要杀器,它可以很轻松地做到多个
goroutine
(网络调用)之间的级联控制,也就是当一个主
goroutine
退出,其内部相关
goroutine
随即全部及时退出
mingming0508
·
2023-08-19 07:19
Golang项目学习
golang
开发语言
后端
源码
并发编程
Go——context标准库
context标准库Go中的
goroutine
之间没有父与子的关系,也就没有所谓子进程退出后的通知机制,多个
goroutine
都是平行地被调度,多个
goroutine
如何协作工作涉及通信、同步、通知和退出四个方面
吴声子夜歌
·
2023-08-19 07:48
Go
golang
Go的标准库Context理解
在Gohttp包的Server中,每一个请求在都有一个对应的
goroutine
去处理。请求处理函数通常会启动额外的
goroutine
用来访问后端服务,比如数据库服务。
Looooking
·
2023-08-19 07:16
Go
golang
开发语言
后端
golang实现简单的可重入锁
petermattis/goid""sync""sync/atomic")//Goversion:V1.21.0typeReentryMutexstruct{sync.Mutexownerint64//当前锁的拥有者
goroutine
idreentryint32
·
2023-08-18 14:39
go
golang 协程的实现原理
核心概念要理解协程的实现,首先需要了解go中的三个非常重要的概念,它们分别是G,M和P,没有看过golang源代码的可能会对它们感到陌生,这三项是协程最主要的组成部分,它们在golang的源代码中无处不在.G(
goroutine
2301_77700816
·
2023-08-18 13:51
golang
开发语言
后端
Golang运行时垃圾收集原理及调优
不在垃圾收集范围内Go的标量基本数据类型不在垃圾收集的范围内,因为它们存在于
goroutine
stack中,随着方法的结束而释放,这些变量类型有uint、byte、指针等,垃圾收集主要管理堆区的内存。
IT回忆录
·
2023-08-17 23:00
Go
python
pandas
数据分析
Go --- GCache缓存官方例子
Goroutine
安全支持驱逐,清除和添加条目的事件处理程序。(可选)如果缓存不存在,则自动加载缓存。(可选)
吕元龙的小屋
·
2023-08-17 16:25
go学习笔记
golang
缓存
开发语言
go语言进阶与依赖管理
go语言进阶与依赖管理1.语言进阶(并发编程)1.0并发与并行1.1协程-
goroutine
1.2缓冲区-channel1.3sync1.3.1锁-lock1.3.2waitgroup2依赖管理2.1演变
PUdd
·
2023-08-17 10:10
Go语言
golang
开发语言
Go语言基础:Interface接口、
Goroutine
s线程、Channels通道详细案例教程
目录标题一、Interface1.Declaringandimplementinganinterface2.Practicaluseofaninterface3.Nterfaceinternalrepresentation4.Emptyinterface5.Typeassertion6.Typeswitch7.ImplementinginterfacesusingpointerreceiversV
MeiJin_
·
2023-08-17 09:55
Go
golang
开发语言
后端
go
【go语言】3.2.3 sync 包的使用
这些原语可以帮助你在多个
GoRoutine
之间同步状态。Mutex互斥锁是一种同步工具,用于保证多个
GoRoutine
在访问共享资源时的互斥性。
·
2023-08-17 09:17
人工智能
你的Go应用真的用了正确的 CPU 核数吗?
Go的调度模型是GMP,其中G是
goroutine
,M是线程,P是可用的CPU核数。多个G会共用一个M。M作为操作系统层面上的调度单位,在执行时需要绑定到P。
·
2023-08-16 23:35
go
深入理解Go-sync.Map原理剖析
MapislikeaGomap[interface{}]interface{}butissafeforconcurrentusebymultiple
goroutine
swithoutadditionallockingorcoordination.Loads
·
2023-08-16 23:02
gosyncmap
【go】context
context:主要的用处如果用一句话来说,是在于简化在多个
goroutine
传递上下文数据,并将多个groutine之间关联起来。控制
goroutine
的生命周期。
·
2023-08-16 23:30
go
Go 语言 map 是并发安全的吗?
看一段代码示例,当两个
goroutine
同时对同一个map进行写操作时,会发生什么?packagemai
·
2023-08-16 10:57
gomap并发
【go语言】3.2.1 Go Routines
Go语言的一个重要特性是它的并发模型,Go使用
GoRoutine
s和Channels来处理并发,这使得并发编程变得更加简单和高效。
GoRoutine
s是什么?
·
2023-08-16 09:27
人工智能
channel(管道)-基本介绍
1、channel本质就是一个数据结构-队列2、数据是先进先出3、线程安全,多
goroutine
访问时,不需要加锁,就是说channel本身就是线程安全的4、channel是有类型的,一个string的
算盘
·
2023-08-16 00:38
Go语言
channel
【Go】常见的四个内存泄漏问题
Goroutine
没有顺利结束1、这里更多的是由于channel+for+select导致的,错误的写法导致了发送者或接收者没有发现channel已经关闭,任务已经结束了,却仍然在尝试输入输出https
手抓粑粑
·
2023-08-15 09:54
golang
go
后端
协程(一)单机--》并发--》协程
目录一协程的概述1.1并行与并发1.2线程1.3新的思路1.4
Goroutine
二第一个入门程序一协程的概述我查看了网上的一些协程的资料,发现每个人对协程的概念都不一样,但是我认可的一种说法是:协程就是一种轻量级的线程框架
长安不及十里
·
2023-08-14 03:56
#
Kotkin
jvm
kotlin
java
协程
并发
Go语言小技巧(1)-控制并发数
Go语言小技巧(1)-控制并发数需求虽然
goroutine
很廉价,但是有时候还是希望控制
goroutine
并发数。
陈先生_9e91
·
2023-08-14 02:25
Atomic实现:变量的原子操作
文章目录使用场景核心实现逻辑atomic实现思考参考使用场景多个
goroutine
里面安全访问共享变量核心实现逻辑通过系统的CPU指令来保证对变量的原子操作,如i386的LOCK指令atomic实现代码主要包含如下功能
ase2014
·
2023-08-13 11:48
golang
GO学习之 微框架(Gin)
GO系列1、GO学习之HelloWorld2、GO学习之入门语法3、GO学习之切片操作4、GO学习之Map操作5、GO学习之结构体操作6、GO学习之通道(Channel)7、GO学习之多线程(
goroutine
YPhen
·
2023-08-13 10:38
golang学习
微服务学习
golang
gin
golang学习随记
目录可以自动生成,如何生成可参考右边的帮助文档文章目录go学习快捷键及快速生成代码片段go基础循环流程控制关键字切片,拷贝函数闭包defer语句格式化输出go语言随机数rand.seed()包管理并发编程
goroutine
channel
moumumu
·
2023-08-13 06:07
golang
学习
开发语言
golang pprof 监控系列—— cpu 占用率 统计原理
经过前面的几节对pprof的介绍,对pprof统计的原理算是掌握了七八十了,我们对memory,block,mutex,trace,
goroutine
,threadcreate这些维度的统计原理都进行了分析
2201_75761617
·
2023-08-13 05:36
golang
python
开发语言
Go: http.Server日志处理
但有时候系统错误或者
goroutine
里面的错误可能就忘记输出到日志文件中。
Go语言由浅入深
·
2023-08-12 09:46
Go 语言并发编程 及 进阶与依赖管理
1.0从并发编程本质了解Go高性能的本质1.1
Goroutine
协程可以理解为轻量级线程;Go更适合高并发场景原因之一:Go语言一次可以创建上万协成;“快速”:开多个协成打印。
软工菜鸡
·
2023-08-12 09:06
字节跳动后端Go语言
服务器
go
gin
GO学习之 接口(Interface)
GO系列1、GO学习之HelloWorld2、GO学习之入门语法3、GO学习之切片操作4、GO学习之Map操作5、GO学习之结构体操作6、GO学习之通道(Channel)7、GO学习之多线程(
goroutine
YPhen
·
2023-08-12 03:09
golang学习
golang
go 如何实现 try-lock?
在某些场景,我们只希望一个任务有单一的执行者,而不像计数器一样,所有的
Goroutine
都成功执行。后续的
Goroutine
在抢锁失败后,需要放弃执行,这时候就需要尝试加锁trylock。
wayyyy
·
2023-08-11 20:45
并发编程笔记
并发编程文章目录并发编程@[toc]1.
goroutine
协程代码演示2.调度器查看是否存在资源竞争1.
goroutine
协程语法:通过go+匿名函数启动
goroutine
代码演示funcmain(){
爱编程的小欧
·
2023-08-11 16:50
Go语言
笔记
算法
golang
开发语言
go
后端
golang协程池(
goroutine
池)ants库实践
golang中
goroutine
由运行时管理,使用go关键字就可以方便快捷的创建一个
goroutine
,受限于服务器硬件内存大小,如果不对
goroutine
数量进行限制,会出现OutofMemory错误
梅坞茶坊
·
2023-08-11 13:58
golang
【深度知识】Golang协程调度:协程状态
Go运行时的调度器其实可以看成OS调度器的某种简化版本,一个
goroutine
在其生命周期之中,同样包含了各种状态的变换。弄清了这些状态及状态间切换的原理,对搞清整个Go调度器会非常有帮助。
笔名辉哥
·
2023-08-11 03:04
【从零单排Golang】第十三话:使用WaitGroup等待多路并行的异步任务
在这样的case下,如果每一个输入串行处理的话,那么很大一部分时间都会损耗在给外部发请求这个环节,因此我们会希望把这些请求放到各个
goroutine
里异步执行,等待批量执行完成之后再继续后面的逻辑。
utmhikari
·
2023-08-11 00:29
从零单排Golang
golang
WaitGroup
后端
异步
并行
Go语言的并发,你做对了吗?
[
goroutine
s]首先来看一下
goroutine
s。
Goroutine
是一个轻量级的线程。启动方式,就用go关键字gof(x)。
丁哥开讲
·
2023-08-10 23:29
Go 语言 map 是并发安全的吗?
看一段代码示例,当两个
goroutine
同时对同一个map进行写操作时,会发生什么?packagemai
yongxinz
·
2023-08-10 15:54
Go
Go面试题
golang
开发语言
面试
数据结构
后端
【go笔记】
goroutine
调度器的GMP模型简介
说起go语言,离不开
goroutine
。之前使用go语言开发的时候,也没多少机会用到
goroutine
。趁这些天了解一下GMP模型G(
goroutine
)M(thread)P(Processor)。
李明燮
·
2023-08-10 10:18
Golang sync库--Cond
按照文档的描述:Condimplementsaconditionvariable,arendezvouspointfor
goroutine
swaitingfororannouncingtheoccurrenceofanevent
MontyOak
·
2023-08-10 06:22
golang pprof 监控系列(5) —— cpu 占用率 统计原理
经过前面的几节对pprof的介绍,对pprof统计的原理算是掌握了七八十了,我们对memory,block,mutex,trace,
goroutine
,threadcreate这些维度的统计原理都进行了分析
蓝胖子的编程梦
·
2023-08-09 22:19
服务监控
golang
性能优化
云计算
运维
开发语言
GO 多线程工具使用和分析
GO多线程工具使用和分析Go语言中的sync包提供了一些用于同步和互斥访问共享资源的原语,使用这些可以避免多个
goroutine
同时访问共享资源时出现的问题,他们有:互斥锁读写锁condWaitGroupmaponcepoolatomic
daliucheng
·
2023-08-09 12:34
go语言
golang
后端
GO学习之 网络通信(Net/Http)
GO系列1、GO学习之HelloWorld2、GO学习之入门语法3、GO学习之切片操作4、GO学习之Map操作5、GO学习之结构体操作6、GO学习之通道(Channel)7、GO学习之多线程(
goroutine
YPhen
·
2023-08-08 07:59
golang学习
golang
Go调试神器pprof使用教程【实战分享】
go常见产生内存泄露的原因就是
goroutine
没有结束,简单说就是
goroutine
被阻塞了,这样就会导致
goroutine
引用的内存不被GC回收。
NPE~
·
2023-08-07 23:03
go
golang
开发语言
后端
内存暴涨
线上问题分析
实战
Go 入坑 之 协程(
goroutine
)
本文参考:《Go语言四十二章经》《深度探索Go语言》-封幼林原文链接:https://github.com/ffhelicopter/Go42无情的缝合机器,内容非原创,只作为学习笔记用前置知识:并发:指的是程序的逻辑结构。如果程序代码结构中的某些函数逻辑上可以同时运行,但物理上未必会同时运行。并行:并行是指程序的运行状态。并行则指的就是在物理层面也就是使用了不同CPU在执行不同或者相同的任务。G
爆零砖家
·
2023-08-07 23:33
Go
golang
开发语言
一文读懂Channel设计
在Go中,要理解channel,首先需要认识
goroutine
。一、为什么会有
goroutine
现代操作系统中为我们提供了三种基本的构造并发程序的方法:多进程、I/O多路复用和多线程。
机器铃砍菜刀
·
2023-08-07 23:02
Golang
golang
channel
goroutine
并发编程
一文搞懂Go语言并发【
goroutine
】
文章目录前言一、基本概念①并发、并行区分1.概念2.图解②从用户态线程,内核态线程阐述go与java并发的优劣1.用户态线程、内核态线程差异:2.java与go并发差异:②高并发为什么是Go语言强项?1.历史背景2.自身原因③Go语言实现高并发底层GMP模型原理解析1.G:2.M:3.P:4.指定cpu线程个数二、上代码学会Go语言并发①.开启一个简单的线程1.使用匿名函数开启线程2.出问题的原理
酷尔。
·
2023-08-07 23:01
Go语言从入门到精通
golang
java
开发语言
关于Go并发编程,你不得不知的“左膀右臂”——并发与通道!
本文主要介绍
Goroutine
和channel的实现。Go并发编程模型在底层是由操作系统所提供的线程库支撑的,这里先简要介绍一下线程实现模型的相关概念。
腾讯云开发者
·
2023-08-07 23:31
内核
队列
多线程
java
编程语言
golang中等待所有
goroutine
执行完成.
golang中,创建一个channel并开始执行后便脱离了主程序控制,那么,类似于其他语言中,多线程中的每个线程join到主线程,golang中如何等待所有的
goroutine
都执行完毕?
trump2018
·
2023-08-07 21:11
Go 语言面试题(一):基础语法
Q5什么是协程(
Goroutine
)Q6如何高效地拼接字符串Q7什么是rune类型Q8如何判断map中是否包含某个key?Q9Go支持默认参数或可选参数吗?
鹤冲天Pro
·
2023-08-07 14:48
#
Golang
golang
开发语言
后端
Go 并发模型—
Goroutine
前言
Goroutine
s是Go[1]语言主要的并发原语。它看起来非常像线程,但是相比于线程它的创建和管理成本很低。
mghio
·
2023-08-06 20:04
golang
java
数据库
开发语言
后端
Go 并发模型—
Goroutine
s
前言
Goroutine
s是Go语言主要的并发原语。它看起来非常像线程,但是相比于线程它的创建和管理成本很低。
mghio
·
2023-08-06 20:34
Go
golang
java
数据库
Golang之路---04 并发编程——信道/通道
信道/通道如果说
goroutine
是Go语言程序的并发体的话,那么channel(信道)就是它们之间的通信机制。
rookieyx
·
2023-08-06 12:56
Golang
golang
网络
开发语言
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他