IT书架 本次搜索耗时 0.067 秒,为您找到 213 个相关结果.
  • 62.golang并发模型

    golang并发模型 1、使用最基本通过channel通知实现并发控制 2.通过sync包中的WaitGroup实现并发控制 3. 在Go 1.7 以后引进的强大的Context上下文,实现并发控制 golang并发模型 **题目来源:**米哈游 参考文章 golang控制并发有三种经典的方式 一种是通过channel 通知...
  • 165.golang 的 waitGroup 用法

    golang 的 waitGroup 用法 golang 的 waitGroup 用法 题目来源:腾讯 答案: WaitGroup 的实现逻辑 WaitGroup 的底层内存结构及性能优化 WaitGroup 的内部如何实现无锁操作WaitGroup 的使用 func main () { var wg sync ...
  • 574.Go语言的性能分析工具 runtime/pprof 有用过吗

    Go语言的性能分析工具 runtime/pprof 是一个内置库,提供了多种性能分析工具,包括CPU分析器、内存分析器、阻塞分析器、互斥锁分析器和跟踪工具。通过这些工具,开发者可以轻松地对Go程序进行资源使用情况(如CPU和内存)的分析,从而识别和解决性能瓶颈。此外,pprof还可以生成和查看性能分析数据,帮助开发者找到程序中的性能瓶颈并进行优化。 要...
  • 328.性能调优怎么做

    性能调优怎么做 性能调优怎么做 题目来源:腾讯 答案: 1.首先要了解调优的基本思路 1.对外接口协议不能改变 2.了解需求和代码演进过程 3.确定资源消耗类型 4.控制运算数据输入量 5.提高 CPU 利用率 6.提高缓存命中率 2.使用pprof查看程序的CUP火焰图,CUP调用关系、CUP调用关系、查看goroutine情况 ...
  • 1.api网关对比

    什么是api网关 api网关具备哪些功能 api网关对比 什么是api网关 api网关具备哪些功能 api网关对比 go java nginx API 网关 Kong APISIX Trk Apigee Aliyun 部署模式 单机和集群 单机和集群 单机和集群 不支持单机 PaaS ...
  • 501.插入写屏障

    插入写屏障 插入写屏障 Go GC 在混合写屏障之前,一直是插入写屏障,由于栈赋值没有 hook 的原 因,栈中没有启用写屏障,所以有 STW。Golang 的解决方法是:只是需要在结 束时启动 STW 来重新扫描栈。这个自然就会导致整个进程的赋值器卡顿。
  • 456.Go Convey 是什么?一般用来做什么?

    Go Convey 是什么?一般用来做什么? Go Convey 是什么?一般用来做什么? 参考解析 go convey是一个支持Golang的单元测试框架 go convey能够自动监控文件修改并启动测试,并可以将测试结果实时输出到Web界面 go convey提供了丰富的断言简化测试用例的编写
  • 319.golang的gc流程,会stw吗,三色不变和混合写屏障

    golang的gc流程,会stw吗,三色不变和混合写屏障 golang的gc流程,会stw吗,三色不变和混合写屏障 题目来源: 百度, 知乎,跟谁学 答案: 三色标记垃圾收集器的工作原理 从灰色对象的集合中选择一个灰色对象并将其标记成黑色; 将黑色对象指向的所有对象都标记成灰色,保证该对象和被该对象引用的对象都不会被回收; 重复上...
  • 449.什么是 Goroutine?你如何停止它?

    什么是 Goroutine?你如何停止它? 什么是 Goroutine?你如何停止它? 参考解析 一个 Goroutine 是一个函数或方法执行同时旁边其他任何够程采用了特殊的 Goroutine线程。Goroutine 线程比标准线程更轻量级,大多数 Golang 程序同时使用数千个 Goroutine。 要创建 Goroutine,请go 在...
  • 349.channel有了解吗?

    channel有了解吗? channel有了解吗? 题目来源:微步 答案: golang是通过 channel 进行协程(goroutine)之间的通信来实现数据共享,这种方式的优点是通过提供原子的通信原语,避免了竞态情形(race condition)下复杂的锁机制。