Blog

export_default的行为

Content #

JavaScript语言中,下面两种使用export导出变量的方式有何区别?

//method 1
export let a;
//method 2
var a = {};
export default a;

export default 的行为跟导出变量是不一致的,这里导出的是值,导出的就是普通变量 a 的值,以后 a 的变化与导出的值就无关了,修改变量 a,不会使得其他模块中引入的 default 值发生改变。

Viewpoint #

From #

toc:CPP

理论 #

Bjarne关于C++学习的洋葱理论 单一定义规则 栈展开(stack unwinding) The Rule of Three 对象切割(object slicing)

语法 #

const三种用法 统一初始化(uniform initialization) 半正则(semiregular)的对象 为CMyString类添加赋值运算符函数 RAII(Resource Acquisition Is Initialization)

decltype explicit(C++ keyword)

IO #

cin与getline混合使用时的换行符陷阱 读取一行(getline和get)

内存模型 #

观察CPP中虚函数的虚表

优化 #

优化和未定义行为 优化和执行顺序 让cin/cout的性能超过scanf/printf endl与换行符的区别

模板 #

什么是SFINAE

位运算 #

8位字节对齐

function object的三个优点

sub:lambda表达式(CPP) sub:STL

Tools #

jupyter notebook中添加C++ kernel

const三种用法

Question #

下面三种C++常量的用法有何区别?

const char *p = greeting;
char * const p = greeting;
const char * const p = greeting;

Answer #

const char *p = greeting; //non-const pointer, const data
char * const p = greeting; //const pointer, non-const data
const char * const p = greeting; //const pointer, const data

const在"“号左边,表示指针所指的数据是常量。const在”“号右边,表示指针本身是常量。

Viewpoint #

From #

五大阻塞式操作

Redis中的五大阻塞式操作分别是什么? #

  1. 第一个阻塞点:集合全量查询和聚合操作。
  2. bigkey 删除操作就是 Redis 的第二个阻塞点。
  3. Redis 的第三个阻塞点:清空数据库。(FLUSHDB, FLUSHALL)
  4. 第四个阻塞点:AOF 日志同步写。
  5. 加载 RDB 文件就成为了 Redis 的第五个阻塞点。

对于 Redis 的五大阻塞点来说,除了“集合全量查询和聚合操作”和“从库加载 RDB 文件”,其他三个阻塞点涉及的操作都不在关键路径上,所以,我们可以使用 Redis 的异步子线程机制来实现 bigkey 删除,清空数据库,以及 AOF 日志同步写。

Viewpoint #

From #

toc:Redis

Content #

bgsave避免阻塞主进程的原理 AOF非阻塞重写 主从库的第一次同步 repl_backlog_buffer的用法 replication buffer和repl_backlog_buffer的区别

缓存 #

LRU策略与扫描式单次查询 LFU策略lfu_decay_time配置项 缓存污染

高可用 #

哨兵的三个任务 哨兵的“Leader选举”

参数 #

性能 #

稳定者生存

Content #

《自私的基因》一书认为达尔文的“适者生存”其实是某个普遍法则的特殊情况,请问是哪个法则?

达尔文的“适者生存”其实是稳定者生存(survival of the stable)这个普遍法则的广义特殊情况。宇宙为稳定的物质所占据。所谓稳定的物质,是指原子的聚合体,它因具有足够的稳定性或普遍性而被赋予这个名称。

Viewpoint #

From #

每个人接收到的信息都是独一无二的

Content #

量子力学向我们揭示了,你不可能观察一个东西而不改变它。每个人接收到的来自外部世界的信息都是独一无二的。如何解释这一点?

想象你和一位朋友坐在一个非常暗的房间里观察一束昏暗的光线。将这束光调得非常非常暗,比如用多层布料蒙在它上面。最终,你和你的朋友只能看到间歇性的闪光。但是你们看到闪光的时间是不同的。光已经被分解为单个量子,而每个量子不能被共享。在这个基本层面上,我们感受到的世界是不同的。

Viewpoint #

From #

股票的贝塔值

Content #

宏观因子主要描述了股票对一些宏观变量的敏感性。

最常见的宏观因子是贝塔值,它反映的是股票对股票指数的敏感性。一只股票的贝塔值,你可以简单理解成该股票涨跌幅相对于股票指数涨跌幅的倍数。比如说,一只股票对股指的贝塔值是 1.2,那就意味着当指数上涨 1% 的时候,这只股票平均要上涨 1.2%;如果股指下跌 2%,那这只股票平均下跌 2.4%。

Viewpoint #

From #