摘要: new 分配 Go提供了两种分配原语,即内建函数 new 和 make。 它们所做的事情不同,所应用的类型也不同。它们可能会引起混淆,但规则却很简单。 让我们先来看看 new。这是个用来分配内存的内建函数, 但与其它语言中的同名函数不同,它不会初始化内存,只会将内存置零。 也就是说,new(T) 会 阅读全文
posted @ 2020-06-23 16:28 Yan_Hao 阅读(1232) 评论(0) 推荐(0) 编辑
摘要: 分布式唯一id:snowflake算法思考 匠心零度 转载请注明原创出处,谢谢! 缘起 为什么会突然谈到分布式唯一id呢?原因是最近在准备使用RocketMQ,看看官网介绍: 一句话,消息可能会重复,所以消费端需要做幂等。为什么消息会重复后续RocketMQ章节进行详细介绍,本节重点不在这里。 为了 阅读全文
posted @ 2020-06-12 15:34 Yan_Hao 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 分库分表大文章 什么是分库分表 顾名思义,分库分表就是按照一定的规则,对原有的数据库和表进行拆分,把原本存储于一个库的数据分块存储到多个库上,把原本存储于一个表的数据分块存储到多个表上。 本文看java代码, 虽然我是C++程序员 为什么需要分库分表 随着时间和业务的发展,数据库中的数据量增长是不可 阅读全文
posted @ 2020-06-12 15:29 Yan_Hao 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 文章目录概述什么是RedisRedis有哪些优缺点为什么要用 Redis /为什么要用缓存为什么要用 Redis 而不用 map/guava 做缓存?Redis为什么这么快数据类型Redis有哪些数据类型Redis的应用场景持久化什么是Redis持久化?Redis 的持久化机制是什么?各自的优缺点? 阅读全文
posted @ 2020-06-12 14:33 Yan_Hao 阅读(1118) 评论(0) 推荐(0) 编辑
摘要: C++ 自由存储区是否等价于堆? 原文:C++ 自由存储区是否等价于堆?https://www.cnblogs.com/QG-whz/p/5060894.html 阅读目录 “free store” VS “heap” 问题的来源 结论 参考资料 正文 文章也发布在 听风过境的专栏 回到顶部 “fr 阅读全文
posted @ 2020-06-10 14:48 Yan_Hao 阅读(129) 评论(0) 推荐(0) 编辑
摘要: RAII RAII全称是“Resource Acquisition is Initialization”,直译过来是“资源获取即初始化”. 在构造函数中申请分配资源,在析构函数中释放资源。因为C++的语言机制保证了,当一个对象创建的时候,自动调用构造函数,当对象超出作用域的时候会自动调用析构函数。所 阅读全文
posted @ 2020-06-01 17:48 Yan_Hao 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。 不管是文件,还是套接字,还是管道,我们都可以把他们看作流。 之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们可以往流写入数据。现在假定一个情形,我们需要从流中读数 阅读全文
posted @ 2020-05-22 12:02 Yan_Hao 阅读(150) 评论(0) 推荐(0) 编辑
摘要: C/C++ 中 volatile 关键字详解 分类 编程技术 1、为什么用volatile? C/C++ 中的 volatile 关键字和 const 对应,用来修饰变量,通常用于建立语言级别的 memory barrier。这是 BS 在 "The C++ Programming Language 阅读全文
posted @ 2020-05-18 17:12 Yan_Hao 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 原创 转载前请先联系 阅读全文
posted @ 2020-05-10 13:13 Yan_Hao 阅读(1338) 评论(0) 推荐(0) 编辑
摘要: Linux堆内存管理 阅读全文
posted @ 2020-04-27 18:28 Yan_Hao 阅读(242) 评论(0) 推荐(0) 编辑