一些小知识
文章平均质量分 86
放一些go语言的和其他语言的对比和一些八股
BigOrangeSama
这个作者很懒,什么都没留下…
展开
-
Go基础八股
栈上分配内存比在堆中分配内存效率更高栈上分配的内存不需要 GC 处理,而堆需要逃逸分析目的是决定内分配地址是栈还是堆逃逸分析在编译阶段完成因为无论变量的大小,只要是指针变量都会在堆上分配,所以对于小变量我们还是使用传值效率(而不是传指针)更高一点为了能让CPU可以更快的存取到各个字段,Go编译器会帮你把struct结构体做数据的对齐。所谓的数据对齐,是指内存地址是所存储数据大小(按字节为单位)的整数倍,以便CPU可以一次将该数据从内存中读取出来。原创 2023-09-11 04:15:51 · 391 阅读 · 0 评论 -
发布订阅机制和点对点机制
这种模式就好比,限定了每篇论文只能被一个用户消费,比如现在有一篇分布式相关的论文,这篇论文推送给学生 A 之后,论文网站就必须将其删除或下架,也就是说其他用户无法再获取或阅读该论文了。在分布式通信领域中,消息系统一般有两种典型的模式。生产者可以发送消息到消息中心,而消息中心通常以主题(Topic)进行划分,每条消息都会有相应的主题,消息会被存储到自己所属的主题中,订阅该主题的所有消费者均可获得该消息进行消费。我的理解是,点对点模式就是生产者生产的消息有一个固定的消费者,其他人都拿不到,是1-1。原创 2023-09-09 20:46:04 · 744 阅读 · 0 评论 -
Redis发布订阅机制学习
当一个客户端c1去向redis订阅一个主题chatroom的时候,Redis内部就会创建一块空间叫chatroom。后续其他客户端c2c3都可以来订阅该主题。(理解是像是好友分组,订阅一个主题都分到一个组里去)先输入 redis-server.exe 启动redis,否则对应接口不开放。当有一个客户端向这个主题发布消息的时候,所有订阅该主题的客户都能收到消息。再输入 redis-cli 命令启动客户端服务。1)代表消息类型 2)代表哪个组 3)消息内容。原创 2023-09-09 20:31:30 · 470 阅读 · 1 评论 -
mysql八股1
存储过程是一些预编译的 SQL 语句。包含对单表或者多表的一些操作,由于是预编译,效率会高一些。理解是类似于预先设定好的函数,封装一堆操作,还能起个名。原创 2023-09-09 19:28:36 · 263 阅读 · 1 评论 -
redis八股1
参考。原创 2023-09-08 23:33:01 · 305 阅读 · 0 评论 -
go小知识2
包(pkg)是 Go ⼯作区中包含 Go 源⽂件或其他包的⽬录。源⽂件中的每个函数、变量和类型都存储在链接包中。每个 Go 源⽂件都属于⼀个包。原创 2023-09-08 03:25:57 · 503 阅读 · 0 评论 -
go小知识
和cpp不一样,cpp有值传递,指针传递,和引用传递;go只有前两种,但本质都是传值。go语言没有引用传递,只有值传递。但是类型有引用类型和值类型。原创 2023-08-14 22:13:15 · 39 阅读 · 0 评论