IT书架 本次搜索耗时 0.022 秒,为您找到 746 个相关结果.
  • 234.两个协程交替打印1到20

    152 2024-01-18 《Golang面试题》
    两个协程交替打印1到20 答案: 两个协程交替打印1到20 参考解析 题目来源:字节跳动 答案: 使用channel package main import ( "fmt" "sync" "time" ) func main () { wg ...
  • 533.Go channel共享内存有什么优劣势?

    140 2024-01-25 《Golang面试题》
    Go channel共享内存有什么优劣势? Go channel共享内存有什么优劣势? 参考解析 “不要通过共享内存来通信,我们应该使用通信来共享内存” 这句话想必大家已经非常熟悉了,在官方的博客,初学时的教程,甚至是在 Go 的源码中都能看到 无论是通过共享内存来通信还是通过通信来共享内存,最终我们应用程序都是读取的内存当中的数据,只是前者...
  • 6.Go channel共享内存有什么优劣势?

    6.Go channel共享内存有什么优劣势? 6.Go channel共享内存有什么优劣势? “不要通过共享内存来通信,我们应该使用通信来共享内存” 这句话想必大家已经非常熟悉了,在官方的博客,初学时的教程,甚至是在 Go 的源码中都能看到 无论是通过共享内存来通信还是通过通信来共享内存,最终我们应用程序都是读取的内存当中的数据,只是前者是直接...
  • 20、接入websocket并实现最基础的文字通讯

    接入websocket并实现最基础的文字通讯 一、完成webscoket协议 二、实现controller/chat.go的Chat方法 三、实现service/user.go的Find方法 四、前端websocket初始化 五、进行测试一下 接入websocket并实现最基础的文字通讯 一、完成webscoket协议 1.新建cont...
  • 4.程序实体的那些事儿(上)

    637 2023-12-29 《Go语言核心36讲》
    04 | 程序实体的那些事儿(上) 问题:声明变量有几种方式? 典型回答 问题解析 知识扩展 1. Go语言的类型推断可以带来哪些好处? 2. 变量的重声明是什么意思? 总结 思考题 04 | 程序实体的那些事儿(上) 我已经为你打开了Go语言编程之门,并向你展示了“程序从初建到拆分,再到模块化”的基本演化路径。 一...
  • 321.对比 Go 语言和 Java 语言

    133 2024-01-22 《Golang面试题》
    对比 Go 语言和 Java 语言 对比 Go 语言和 Java 语言 题目来源:知乎 答案: 语言不是创造的,语言都是组合的。Go 比 Java 更年轻,在语言的特点上,Go 学习了许多语言的优点,避开了许多原的缺点。Go 继承了 C 的“宝藏库”,相比最初的 Java 已经站在了巨人的肩膀上。在错误处理上(这个点大有文章,可以看一下 2...
  • 内存管理

    1.Go 内存分配机制? 2.Go 内存逃逸机制? 3.Go 内存对齐机制? 4.Go GC实现原理? 5.Go GC如何调优? 6.Go 如何查看GC信息?
  • 3.Go map为什么是非线程安全的?

    3.Go map为什么是非线程安全的? 3.Go map为什么是非线程安全的? map默认是并发不安全的,同时对map进行并发读写时,程序会panic,原因如下: Go 官方在经过了长时间的讨论后,认为 Go map 更应适配典型使用场景(不需要从多个 goroutine 中进行安全访问),而不是为了小部分情况(并发访问),导致大部分程序付出加锁代...
  • 432.Go中struct组合与Java继承的区别

    129 2024-01-23 《Golang面试题》
    Go中struct组合与Java继承的区别 答案: Go中struct组合与Java继承的区别 参考解析 题目来源:快手 答案: 两者都是在编译期实现的。Go语言的继承通过匿名组合完成:基类以Struct的方式定义,子类只需要把基类作为成员放在子类的定义中,支持多继承。Java的继承通过extends关键字完成,不支持多继承。 示例...
  • 48.问等待所有goroutine结束,怎么做?

    234 2024-01-16 《Golang面试题》
    问等待所有goroutine结束,怎么做? 问等待所有goroutine结束,怎么做? 题目来源 :滴滴 答案: 1)用channel进行同步(该方法需要知道goroutine的数量) func main () { ch := make ( chan int , 2 ) go func () ...