上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 234 下一页

2021年4月23日

golang 中, os.exit() runtime.Goexit() return 有什么区别

摘要: return结束当前函数,并返回指定值runtime.Goexit结束当前goroutine,其他的goroutine不受影响,主程序也一样继续运行os.Exit会结束当前程序,不管你三七二十一 Gosched 暂停当前goroutine,使其他goroutine先行运算。只是暂停,不是挂起,当时间 阅读全文

posted @ 2021-04-23 15:04 ExplorerMan 阅读(1764) 评论(0) 推荐(0)

Golang 协程控制关闭

摘要: 部分代码参考:https://zhuanlan.zhihu.com/p/26695984 这边文章的的 package main import ( "context" "fmt" "time") func main() { ctx := context.Background() ctx, cance 阅读全文

posted @ 2021-04-23 15:00 ExplorerMan 阅读(952) 评论(0) 推荐(0)

Redis主从集群切换数据丢失问题

摘要: 一、数据丢失的情况 异步复制同步丢失集群产生脑裂数据丢失 1.异步复制丢失对于Redis主节点与从节点之间的数据复制,是异步复制的,当客户端发送写请求给master节点的时候,客户端会返回OK,然后同步到各个slave节点中。如果此时master还没来得及同步给slave节点时发生宕机,那么mast 阅读全文

posted @ 2021-04-23 11:07 ExplorerMan 阅读(678) 评论(0) 推荐(0)

2021年4月21日

Goroutine(协程)的理解

摘要: title: Goroutine(协程)的理解tags: Go,GoroutineAuthor: Clown95 并发概念 Go语言相对于其他语言的最大一个特色就是支持高并发编程模式。Goroutine(协程)是Go中最基本的执行单元。事实上每一个Go程序至少有一个Goroutine:主Gorout 阅读全文

posted @ 2021-04-21 10:26 ExplorerMan 阅读(401) 评论(0) 推荐(0)

堆和栈的概念和区别

摘要: 在说堆和栈之前,我们先说一下JVM(虚拟机)内存的划分: Java程序在运行时都要开辟空间,任何软件在运行时都要在内存中开辟空间,Java虚拟机运行时也是要开辟空间的。JVM运行时在内存中开辟一片内存区域,启动时在自己的内存区域中进行更细致的划分,因为虚拟机中每一片内存处理的方式都不同,所以要单独进 阅读全文

posted @ 2021-04-21 10:24 ExplorerMan 阅读(452) 评论(0) 推荐(0)

golang goroutine实现_golang中的Mutex设计原理详解(一)

摘要: Mutex系列是根据我对晁岳攀老师的《Go 并发编程实战课》的吸收和理解整理而成,如有偏差,欢迎指正~ 目标本系列除了希望彻底学习和了解 golang 中 sync.Mutex 的原理和使用,更希望借 golang 中 Mutex 的发展和演变,了解并发场景下锁的设计与实现方法以及不同业务场景下的一 阅读全文

posted @ 2021-04-21 10:09 ExplorerMan 阅读(188) 评论(0) 推荐(0)

Sentinel Go 核心统计结构滑动窗口的深度解析

摘要: Sentinel Go 核心模块分析之滑动窗口统计结构设计什么是滑动时间窗口滑动窗口基本运行模式滑动窗口的周期和格子长度怎么设置?滑动窗口长度一致,格子长度不一致格子长度一致,滑动窗口长度不一致总结Sentinel Go时间滑动窗口实现长度可设置的原子数组基于时间的滑动窗口实现 本文主要分析 Sen 阅读全文

posted @ 2021-04-21 10:08 ExplorerMan 阅读(347) 评论(0) 推荐(0)

golang sync.Mutex互斥锁的实现原理

摘要: golang sync.Mutex互斥锁的实现原理数据结构与状态机Lock(1)正常模式(2) 饥饿模式Unlocksync.Mutex是一个不可重入的排他锁。 这点和Java不同,golang里面的排它锁是不可重入的。 当一个 goroutine 获得了这个锁的拥有权后, 其它请求锁的 gorou 阅读全文

posted @ 2021-04-21 10:07 ExplorerMan 阅读(489) 评论(0) 推荐(0)

Golang-Scheduler原理解析

摘要: Golang Scheduler原理解析Section1 Scheduler原理1.基础知识2.调度模型3.调度核心问题Section2 主要模型的源码分析2.1 实体M2.2 实体P(processor)2.3 实体G(goroutine)Section3 主要调度流程的源码分析3.1 预备知识3 阅读全文

posted @ 2021-04-21 10:06 ExplorerMan 阅读(424) 评论(0) 推荐(0)

Golang-Channel原理解析

摘要: 本文主要分析golang实现并发基础组件channel的实现原理;主要内容分为几个部分Section1:channel使用实例分析Section2:源码分析 Golang-Channel原理解析Section1 channel使用实例1.1 make channel1.2 sends and rec 阅读全文

posted @ 2021-04-21 10:04 ExplorerMan 阅读(710) 评论(0) 推荐(0)

上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 234 下一页

导航