并发
已收录文章:77篇
-
大家好,我是公众号:java小杰要加油,今天来分享一个关于mysql的知识点——mysql中的锁话不多说,直接开车事务并发访问情况读-读 情况并发事务读取相同的数据,并不会对数据造成影响,允276 收藏
-
一、goroutine 1、协程(Coroutine) Golang 在语言层面对并发编程进行了支持,使用了一种协程(goroutine)机制, 协程本质上是一种用户态线程,不需要操作系统来进行抢占式调度,但是又寄生于线270 收藏
-
多路复用是通信和网络中的一个专业术语。多路复用通常表示在一个信道上传输多路信号或数据流的过程和技术。提示报话机同一时刻只能有一边进行收或者发的单边通信,报话机需要遵守的通266 收藏
-
问题内容既然并发问题会带来的问题是:原子性破坏,可见性破坏,以及有序性不确定带来的问题。但是我恰好有多个携程对一个全局变量并发写,但是我对读到谁不敏感, 例如:var a int64 go fu261 收藏
-
Go语言中无缓冲的通道(unbuffered channel)是指在接收前没有能力保存任何值的通道。这种类型的通道要求发送 goroutine 和接收 goroutine 同时准备好,才能完成发送和接收操作。如果两个 goroutine 没258 收藏
-
环境 go version go1.16.4 windows/amd64 Intel(R) Core(TM) i7-7820HK CPU @ 2.90GHz 4核心8线程 项目需求 处理数个约5MB的小文件 从源目录读取文件并拷贝到目标目录 计算源文件MD5和目标文件MD5进行对比,如不相同257 收藏
-
一、事务的概念 一个事务是由一条或多条对数据库操作的SQL语句所组成的一个不可分割的单元,只有当事务中所有操作都正常执行完了,整个事务才会被提交给数据库,如果有部分事务处理失257 收藏
-
1. goroutine 1.1 定义 func main() { for i := 0; i < 10; i++ { //开启并发打印 go func(i int) { fmt.Printf("hello goroutine : %d \n", i) }(i) } time.Sleep(time.Millisecond) } go语言是采用一种叫 协程(Coroutine) 轻量级255 收藏
-
我就废话不多说了,大家还是直接看代码吧~ package main import ( "fmt" "time" "sync" "sync/atomic" ) func main() { test1() test2() } func test1() { var wg sync.WaitGroup count := 0 t := time.Now() for i := 0 ; i < 50000251 收藏
-
Go语言的类型系统提供了单方向的 channel 类型,顾名思义,单向 channel 只能用于发送或者接收数据。channel 本身必然是同时支持读写的,否则根本没法用。假如一个 channel 真的只能读,那么肯定238 收藏
-
那么通过什么手段来优化呢?我们首先想到的是通过并发来的方式来处理依赖,这样就能降低整个依赖的耗时,Go基础库中为我们提供了 WaitGroup 工具用来进行并发控制,但实际业务场景中多个234 收藏
-
在执行一些昂贵的计算任务时,我们希望能够尽量利用现代服务器普遍具备的多核特性来尽量将任务并行化,从而达到降低总计算时间的目的。此时我们需要了解 CPU 核心的数量,并针对性地分223 收藏