Redis 的 String 类型内部采用简单动态字符串(SDS)来管理字符串。相比于 C 语言的原生字符串,SDS 有以下优势:
缓存雪崩指的是在某个时间点,缓存中的大量数据同时失效,导致大量请求直接落到数据库上,造成数据库压力过大,甚至引发系统崩溃。
最近在做面试培训的过程中,收到了很多同学反馈的面试问题,汇总了几个常见的高频问题,谈谈看法及解答思路,希望能对小伙伴们有所帮助。
其中拼多多的薪资最为离谱,尤其是前几年,听说挖同行的开发人员,薪资可以开到原来薪资的两到三倍,真是变态(但是我喜欢)。
boolean 只有两个值:true、false,可以使用 1 bit 来存储,但是具体大小没有明确规定。JVM 会在编译时期将 boolean 类型的数据转换为 int,使用 1 来表示 true,0 表示 false。JVM 支持 boolean 数组,但是是通过读写 byte 数组...
静态分配是在编译时为对象分配内存的过程。静态分配的对象在程序启动时被创建,直到程序结束时才被销毁。静态分配的对象通常被声明为全局变量或静态变量。...
C++是C的超集,也就是说,C++包括了C的所有基础特性,并且还增加了一些新的特性。下面列举一些C和C++之间的主要区别:
虚函数是一个在基类中声明的函数,它可以被子类重写并提供不同的实现。在C++中,使用关键字virtual来声明一个虚函数。虚函数的原理是将函数调用的控制权交给运行时环境,而不是编译时环境。因此,虚函数的实现需要在运行时才...
异常处理是指在程序执行过程中发生异常或错误时,程序能够捕获并处理这些异常或错误的机制。例如,当程序试图访问一个未初始化的指针或除以零时,就会发生异常。异常处理的目的是确保程序能够在出现问题的情况下继续执行,并...
编译器是将源代码转换为可执行文件的程序。在C++中,常用的编译器有GCC和Clang。编译器的主要工作是将源代码翻译成汇编代码,然后再将汇编代码转换成机器码。编译器还可以进行优化,使得程序的执行效率更高。...