一闪笔记 本次搜索耗时 0.109 秒,为您找到 750 个相关结果.
  • 565.Go 有哪些方式安全读写共享变量?

    134 2024-01-25 《Golang面试题》
    Go 有哪些方式安全读写共享变量? Go 有哪些方式安全读写共享变量? 方法 并发原语 备注 不要修改变量 sync.Once 不要去写变量,变量只初始化一次 只允许一个goroutine访问变量 Channel 不要通过共享变量来通信,通过通信(channel)来共享变量 允许多个goroutine访问变量,...
  • 496.基于信号的抢占式调度

    120 2024-01-24 《Golang面试题》
    基于信号的抢占式调度 基于信号的抢占式调度 在任何情况下,Go 运行时并行执行(注意,不是并发)的 goroutines 数量是 小于等于 P 的数量的。为了提高系统的性能,P 的数量肯定不是越小越好,所 以官方默认值就是 CPU 的核心数,设置的过小的话,如果一个持有 P 的 M, 由于 P 当前执行的 G 调用了 syscall 而导致 M 被阻...
  • 5.Go 如何控制并发的goroutine数量?

    5.Go 如何控制并发的goroutine数量? 为什么要控制goroutine并发的数量? 用什么方法控制goroutine并发的数量? 5.Go 如何控制并发的goroutine数量? 为什么要控制goroutine并发的数量? 在开发过程中,如果不对goroutine加以控制而进行滥用的话,可能会导致服务整体崩溃。比如耗尽系统资源...
  • 449.什么是 Goroutine?你如何停止它?

    120 2024-01-23 《Golang面试题》
    什么是 Goroutine?你如何停止它? 什么是 Goroutine?你如何停止它? 参考解析 一个 Goroutine 是一个函数或方法执行同时旁边其他任何够程采用了特殊的 Goroutine线程。Goroutine 线程比标准线程更轻量级,大多数 Golang 程序同时使用数千个 Goroutine。 要创建 Goroutine,请go 在...
  • 531.Go channel为什么是线程安全的?

    133 2024-01-25 《Golang面试题》
    Go channel为什么是线程安全的? Go channel为什么是线程安全的? 为什么设计成线程安全? 不同协程通过 channel 进行通信,本身的使用场景就是多线程,为了保证数据的一致性,必须实现线程安全 如何实现线程安全的? channel 的底层实现中, hchan 结构体中采用 Mutex 锁来保证数据读写安全。在对循环数组 ...
  • 101.go用共享内存的方式实现并发如何保证安全?

    199 2024-01-17 《Golang面试题》
    go用共享内存的方式实现并发如何保证安全? go用共享内存的方式实现并发如何保证安全? 题目来源:网易 答案1: Go的设计思想就是, 不要通过共享内存来通信,而是通过通信来共享内存,前者就是传统的加锁,后者就是Channel。也就是说,设计Channel的主要目 的就是在多任务间传递数据的,本身就是安全的。 看源码就知道channel内部维...
  • 2、Kratos v2 初步学习 2-连接数据库GORM篇

    参考内容: 工具版本: 安装GORM 添加GORM到Kratos GORM是一个对开发者友好 的全功能ORM 库,在本节中,我们将在Kratos内使用它。 参考内容: 《GORM 指南》入门指南-连接到数据库: https://gorm.io/zh_CN/docs/connecting_to_the_database.html 《kra...
  • 128.go的profile工具

    145 2024-01-17 《Golang面试题》
    go的profile工具 go的profile工具 题目来源:小米 答案1: pprof分为采样和分析两个阶段。 采样分为:堆内存采样,协程栈样本手机,CPU样本等。 采样结束后,所有pprof的样本数据最后都会以Protocol Buffers格式序列化数据并通过gzip压缩后写入文件。用户获取该文件后最终将使用go tool pp...
  • 76.go的profile工具

    208 2024-01-17 《Golang面试题》
    go的profile工具 go的profile工具 题目来源: 答案1: 官方文章 profile就是定时采样,收集cpu,内存等信息,进而给出性能优化指导。 Go 存使用采样,有四个相应的指标: inuse_objects :当我们认为内存中的驻留对象过多时,就会关注该指标 inuse_space :当我们认为应用程序占据...
  • 552.Go hand off 机制?

    129 2024-01-25 《Golang面试题》
    Go hand off 机制? Go hand off 机制? 参考解析 概念 也称为P分离机制,当本线程 M 因为 G 进行的系统调用阻塞时,线程释放绑定的 P,把 P 转移给其他空闲的 M 执行,也提高了线程利用率(避免站着茅坑不拉shi)。 分离流程 当前线程M阻塞时,释放P,给其它空闲的M处理