IT书架 本次搜索耗时 0.176 秒,为您找到 1106 个相关结果.
  • 313.GO语言中的协程与Python中的协程的区别?

    134 2024-01-22 《Golang面试题》
    GO语言中的协程与Python中的协程的区别? GO语言中的协程与Python中的协程的区别? 题目来源: python协程特点 单线程内切换,适用于IO密集型程序中,能够最大化IO多路复用的效果。 没法利用多核。 协程间彻底同步,不会并行。不须要考虑数据安全。 关键词yield go协程特点 协程间须要保证数据安全,好比经过channel或锁...
  • 531.Go channel为什么是线程安全的?

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

    134 2024-01-19 《Golang面试题》
    go interface的底层实现 答案: go interface的底层实现 参考解析 题目来源:拼多多 答案: 在Go语言中interface是一个非常重要的概念,也是与其它语言相比存在很大特色的地方。interface也是一个Go语言中的一种类型,是一种比较特殊的类型,存在两种interface,一种是带有方法的interfac...
  • 284.Go依赖管理历史有几次方式

    134 2024-01-19 《Golang面试题》
    Go依赖管理历史有几次方式 答案: Go依赖管理历史有几次方式 参考解析 题目来源:百度 答案: GOPATH:在最出的设计中,没有考虑到版本控制,因此作为依赖根据GOPATH目录。 GO vendor:在有了go module 这个概念之后,最初的版本使用 go vendor 作为依赖,但不能有效版本控制 GO tidy: go...
  • 538.Go 互斥锁允许自旋的条件?

    134 2024-01-25 《Golang面试题》
    Go 互斥锁允许自旋的条件? Go 互斥锁允许自旋的条件? 参考解析 线程没有获取到锁时常见有2种处理方式: - 一种是没有获取到锁的线程就一直循环等待判断该资源是否已经释放锁,这种锁也叫做自旋锁 ,它不用将线程阻塞起来, 适用于并发低且程序执行时间短的场景,缺点是cpu占用较高- 另外一种处理方式就是把自己阻塞起来,会释放CPU给其他...
  • 316.说说你了解的管道

    134 2024-01-22 《Golang面试题》
    说说你了解的管道 说说你了解的管道 题目来源: 百度 答案: Channel 在 gouroutine 间架起了一条管道,在管道里传输数据,实现 gouroutine 间的通信;在并发编程中它线程安全的,所以用起来非常方便;channel 还提供“先进先出”的特性;它还能影响 goroutine 的阻塞和唤醒。
  • 294.go func与method之前的那个receiver的作用

    134 2024-01-19 《Golang面试题》
    go func与method之前的那个receiver的作用 答案: go func与method之前的那个receiver的作用 参考解析 题目来源:字节跳动 答案: 在go语言中,没有类的概念但是可以给类型(结构体,自定义类型)定义方法,所谓方法就是定义了接收者的函数,接收者定义在func关键字和函数名之间 method是附属在...
  • 452.Go 当中同步锁有什么特点?作用是什么

    134 2024-01-23 《Golang面试题》
    Go 当中同步锁有什么特点?作用是什么 Go 当中同步锁有什么特点?作用是什么 参考解析 当一个Goroutine(协程)获得了Mutex后,其他Goroutine(协程)就只能乖乖的等待,除非该Goroutine释放了该Mutex。RWMutex在读锁占用的情况下,会阻止写,但不阻止读 RWMutex。 在写锁占用情况下,会阻止任何其他Gorou...
  • 426.如果一个包要依赖另一个包,这个时候如何写单元测试

    134 2024-01-23 《Golang面试题》
    如果一个包要依赖另一个包,这个时候如何写单元测试 如果一个包要依赖另一个包,这个时候如何写单元测试 参考解析 题目来源:网易 答案: package是Go的代码组织的基本单位,一般一个目录就是一个package,目录名就和package名不一定相同,但是引用的路径一定要写目录名。在目录名和包名不一致的时候,lint程序会帮你把包名补上去。...
  • 374.channel的应用场景

    133 2024-01-23 《Golang面试题》
    channel的应用场景 channel的应用场景 题目来源:斗鱼 答案: 应用场景: 消息传递 任务分发 并发控制 同步(无缓冲channel) 异步(有缓冲channel) 面向对象 封装性 struct { } 继承性 匿名字段 Go 不允许多重继承 多态 ...