书栈网 · BookStack 本次搜索耗时 0.043 秒,为您找到 10458 个相关结果.
  • 第二十三章 同步与锁

    《Go语言四十二章经》第二十三章 同步与锁 23.1 同步锁 23.2 读写锁 23.3 sync.WaitGroup 23.4 sync.Once 23.5 sync.Map 《Go语言四十二章经》第二十三章 同步与锁 作者:李骁 23.1 同步锁 Go语言包中的sync包提供了两种锁类型:sync.Mutex和sync.RWMut...
  • Leaf 游戏服务器框架简介

    Leaf 游戏服务器框架简介 Leaf 的模块机制 Leaf 源码概览 使用 Leaf 开发游戏服务器 Hello Leaf Leaf 模块详解 Leaf ChanRPC Leaf Go Leaf timer Leaf log Leaf recordfile 了解更多 Leaf 游戏服务器框架简介 Leaf 是一个由 Go 语言...
  • 防止缓存击穿之进程内共享调用

    987 2022-03-03 《go-zero v1.3 教程》
    防止缓存击穿之进程内共享调用 使用场景 关键源码分析 最后 防止缓存击穿之进程内共享调用 go-zero微服务框架中提供了许多开箱即用的工具,好的工具不仅能提升服务的性能而且还能提升代码的鲁棒性避免出错,实现代码风格的统一方便他人阅读等等。 本文主要讲述进程内共享调用神器SharedCalls 。 使用场景 并发场景下,可能会有多个线程...
  • 4.2 Pprof

    4.2 Pprof 4.2.1 Pprof 是什么 4.2.2 Juno 中 环境依赖 4.2.3 Juno 中 pprof 的生成和查看 4.2 Pprof 4.2.1 Pprof 是什么 在计算机性能调试领域里,profiling 是指对应用程序的画像,画像就是应用程序使用 CPU 和内存的情况。 Golang 是一个对性能特别看重的语言...
  • 9.2 testing - 基准测试

    testing - 基准测试 基准测试示例 B 类型 计时方法 并行执行 内存统计 基准测试结果 导航 testing - 基准测试 在 _test.go 结尾的测试文件中,如下形式的函数: func BenchmarkXxx (* testing . B ) 被认为是基准测试,通过 go test 命令,加上 -bench...
  • 3.9 Delve调试器

    1568 2019-02-27 《Go语言高级编程》
    3.9 Delve调试器 3.9.1 Delve入门 3.9.2 调试汇编程序 3.9 Delve调试器 目前Go语言支持GDB、LLDB和Delve几种调试器。其中GDB是最早支持的调试工具,LLDB是macOS系统推荐的标准调试工具。但是GDB和LLDB对Go语言的专有特性都缺乏很大支持,而只有Delve是专门为Go语言设计开发的调试工具。而...
  • Leaf ChanRPC

    Leaf ChanRPC Leaf ChanRPC 由于 Leaf 中,每个模块跑在独立的 goroutine 上,为了模块间方便的相互调用就有了基于 channel 的 RPC 机制。一个 ChanRPC 需要在游戏服务器初始化的时候进行注册(注册过程不是 goroutine 安全的),例如 LeafServer 中 game 模块注册了 NewA...
  • Sync

    1554 2020-06-11 《Go语言中文文档》
    1. Sync 1.1.1. sync.WaitGroup 1.1.2. sync.Once 加载配置文件示例 1.1.3. sync.Map 1. Sync 1.1.1. sync.WaitGroup 在代码中生硬的使用time.Sleep肯定是不合适的,Go语言中可以使用sync.WaitGroup来实现并发任务的同步。 sync....
  • go关键字

    1353 2018-04-11 《深入解析Go》
    3.2 go关键字 3.2 go关键字 在Go语言中,表达式go f(x, y, z)会启动一个新的goroutine运行函数f(x, y, z)。函数f,变量x、y、z的值是在原goroutine计算的,只有函数f的执行是在新的goroutine中的。显然,新的goroutine不能和当前go线程用同一个栈,否则会相互覆盖。所以对go关键字的调用协...
  • channel

    1716 2018-04-11 《深入解析Go》
    7.1 channel channel数据结构 读写channel操作 select的实现 7.1 channel channel数据结构 Go语言channel是first-class的,意味着它可以被存储到变量中,可以作为参数传递给函数,也可以作为函数的返回值返回。作为Go语言的核心特征之一,虽然channel看上去很高端,但是其实ch...