IT书架 本次搜索耗时 0.012 秒,为您找到 746 个相关结果.
  • 101.go用共享内存的方式实现并发如何保证安全?

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

    219 2024-01-17 《Golang面试题》
    go 语言的 panic 如何恢复 go 语言的 panic 如何恢复 **题目来源:**腾讯 答案1: recover 可以中止 panic 造成的程序崩溃,或者说平息运行时恐慌,recover 函数不需要任何参数,并且会返回一个空接口类型的值。需要注意的是 recover 只能在 defer 中发挥作用,在其他作用域中调用不会发挥...
  • 6. Go 如何排查数据竞争问题?

    6. Go 如何排查数据竞争问题? 概念 排查方式 6. Go 如何排查数据竞争问题? 概念 只要有两个以上的goroutine并发访问同一变量,且至少其中的一个是写操作的时候就会发生数据竞争;全是读的情况下是不存在数据竞争的。 排查方式 package main import "fmt" func main ()...
  • 542.Go原子操作和锁的区别?

    131 2024-01-25 《Golang面试题》
    Go原子操作和锁的区别? Go原子操作和锁的区别? 原子操作由底层硬件支持,而锁是基于原子操作+信号量完成的。若实现相同的功能,前者通常会更有效率 原子操作是单个指令的互斥操作;互斥锁/读写锁是一种数据结构,可以完成临界区(多个指令)的互斥操作,扩大原子操作的范围 原子操作是无锁操作,属于乐观锁;说起锁的时候,一般属于悲观锁 原子操作存在于各个...
  • 1.Go slice的底层实现原理?

    1.Go slice的底层实现原理? 1.Go slice的底层实现原理? 切片是基于数组实现的,它的底层是数组,可以理解为对 底层数组的抽象。 源码包中src/runtime/slice.go 定义了slice的数据结构: type slice struct { array unsafe . Pointer le...
  • Golang开源发布自己的包

    408 2024-07-23 《程序人生》
    Golang开源发布自己的包 1.前言 2.新建仓库 3. 构建项目和代码 4.提交和发布代码 5.引入和使用包 Golang开源发布自己的包 1.前言 我们平时在Golang项目的编码过程中,除了经常通过import 使用官方提供的依赖包,也经常通过go get -u github.com/xxx/xxx 命令下载第三方包来使用。那么...
  • 456.Go Convey 是什么?一般用来做什么?

    143 2024-01-23 《Golang面试题》
    Go Convey 是什么?一般用来做什么? Go Convey 是什么?一般用来做什么? 参考解析 go convey是一个支持Golang的单元测试框架 go convey能够自动监控文件修改并启动测试,并可以将测试结果实时输出到Web界面 go convey提供了丰富的断言简化测试用例的编写
  • 276.内存对其了解吗?

    148 2024-01-19 《Golang面试题》
    内存对其了解吗? 答案: 内存对其了解吗? 参考解析 题目来源:知乎 答案: go语言的内存分配是基于tcmalloc模型的. go语言跟大多数内置运行时(runtime)的编程语言一样,抛弃传统内存分配的方式,改为自己管理。这样可以完成类似预分配、内存池等操作,以闭开系统调用带来的性能问题,防止每次分配内存都需要系统调用。 go...
  • 357.golang开发用什么框架

    240 2024-01-22 《Golang面试题》
    golang开发用什么框架 golang开发用什么框架 参考解析 题目来源:百度 答案: golang框架图示 Web框架 gin gin是一个知名且简约的Golang Web应用框架。该框架拥有各种开发所需的库合功能。许多知名的开发公司都会采用该 Web 框架来处理各种监控、跟踪、以及调试等问题。此外,相对其他平台,该框...
  • 193.Go的数据结构的零值是什么?

    153 2024-01-18 《Golang面试题》
    Go的数据结构的零值是什么? Go的数据结构的零值是什么? 题目来源:Shein 答案: 所有整型类型:0 浮点类型:0.0 布尔类型:false 字符串类型:”” 指针、interface、切片(slice)、channel、map、function:nil Go的零值初始是递归的,即数组、结构体等类型的零值初始化就是对其组成元素...