上一页 1 2 3 4 5 6 7 8 9 10 ··· 16 下一页
摘要: 重复解锁引起panic mutex 结构 type Mutex struct { state int32 sema uint32 } Mutex.state 表示互斥锁的状态,比如是否被锁定 Mutex.sema 表示信号量,协程阻塞等待该信号量,解锁的协程释放信号量从而唤醒等待信号量的协程 Mut 阅读全文
posted @ 2021-04-25 20:15 hubb 阅读(148) 评论(0) 推荐(0) 编辑
摘要: gRPC-Go gRPC的Go实现:一个高性能、开源、通用的RPC框架,将移动和HTTP/2放在首位。有关更多信息,请参阅Go gRPC文档,或直接进入快速入门。 Prerequisites Go:三个最新的主要版本中的任何一个。 Installation 使用Go模块支持(Go1.11+)),只需 阅读全文
posted @ 2021-04-25 18:51 hubb 阅读(220) 评论(0) 推荐(0) 编辑
摘要: go get cannot load github.com/google/uuid: module github.com/google/uuid: Get https://proxy.golang.org/github.com/google/uuid/@v/list: dial tcp 216.58 阅读全文
posted @ 2021-04-25 09:51 hubb 阅读(563) 评论(0) 推荐(0) 编辑
摘要: php artisan make:command SendEmails 命令该会在 app/Console/Commands 目录下创建³³一个新的命令类2然后发现在应用程序/控制台/命令路径下多了一个SendEmails.php的文件 <?php namespace App\Console\Com 阅读全文
posted @ 2021-04-16 10:54 hubb 阅读(65) 评论(0) 推荐(0) 编辑
摘要: git commit -m xxxxx Changes not staged for commit git push 失败 Everything up-to-date 2. 提交时加上参数:-a ,表示新增。 git commit -am "提交说明"成功 阅读全文
posted @ 2021-04-13 16:28 hubb 阅读(334) 评论(0) 推荐(0) 编辑
摘要: channels 是一种 类型 安全的消息队列,充当两个 goroutine 之间的 管道,将通过它同步的进行任意资源的交换。chan 控制goroutines 交互的能力从而创建了 Go 同步机 制。当创建的 chan 没有容量时,称为无缓冲通道。 反过来,使用容量创建的 chan 称为缓冲通道。 阅读全文
posted @ 2021-04-10 17:19 hubb 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 我们暂且不考虑写磁盘的具体过程,先大致看看下面的图,这代表了 Kafka 的核心架构原理。 Kafka 分布式存储架构 那么现在问题来了,如果每天产生几十 TB 的数据,难道都写一台机器的磁盘上吗?这明显是不靠谱的啊!所以说,这里就得考虑数据的分布式存储了,我们结合 Kafka 的具体情况来说说。在 阅读全文
posted @ 2021-04-09 15:42 hubb 阅读(752) 评论(0) 推荐(0) 编辑
摘要: 一. GoroutineGoroutine是Golang2个核心的设计之一,Goroutine在Golang里面指的是协程。我们知道线程属于系统层面,通常来说创建一个新的线程会消耗较多的资源且管理不易。而Goroutine就像轻量级的线程,但我们称其为协程,一个Go程序可以运行超过数万个Gorout 阅读全文
posted @ 2021-04-09 10:59 hubb 阅读(246) 评论(0) 推荐(0) 编辑
摘要: func main() { count := 0 wg := sync.WaitGroup{} wg.Add(10) for i := 0; i < 10; i++ { go func() { defer wg.Done() for j := 0; j < 100000; j++ { count++ 阅读全文
posted @ 2021-03-30 09:49 hubb 阅读(163) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" "time" ) func main(){ Go(func(){ fmt.Println("hello") panic("一路向北") }) time.Sleep(5 * time.Second) } func Go(x func()){ go 阅读全文
posted @ 2021-03-30 09:47 hubb 阅读(149) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 16 下一页