1.什么是堆栈? 每个应用程序都有自己的一个4GB的内存。 一块内存,操作系统在进程启动的时候已经分配好的,供程序执行时使用 和数据结构的堆栈无关 查看堆栈 2.如何查看应用程序的堆栈 (1) (2)在内存窗口搜索FS对应的内存地址并查看 可以看到当前应用程序被分配的内存即为堆栈 开始地址为:005 ...
分类:
其他好文 时间:
2020-07-05 17:30:17
阅读次数:
56
逃逸分析是golang编译器分析一个对象到底应该放到堆内存上,还是栈内存上(引用了他人的文章) 为何要做逃逸分析 因为对一个程序来说,使用栈内存还是堆内存他们的效率差别很大。 栈内存: 操作系统管理内存的分配和释放,不用golang的垃圾回收操心 内存的存储结构类似于数据结构中的栈,读写位置都在栈顶 ...
分类:
其他好文 时间:
2020-06-16 18:16:57
阅读次数:
48
切片及其用法 对于一个列表 L = [1, 2, 3, 4, 5, 6, 7, 8, 9],我们使用切片来获取特定元素 #获取第1个到第3个(数组下标从0开始,切片是左闭右开的区间,也就是包含0,不包含3) L[0:3] #获取第2个到第五个 L[1:5] #取倒数第5个到倒数第2个 L[-5:-1 ...
分类:
编程语言 时间:
2020-06-14 12:35:18
阅读次数:
60
1、什么是 Redis? Redis 本质上是一个 Key-Value 类型的内存数据库,很像 memcached,整个数据库统统 加载在内存当中进行操作,定期通过异步操作把数据库数据 flush 到硬盘上进行保存。因为 是纯内存操作,Redis 的性能非常出色,每秒可以处理超过 10 万次读写操作 ...
分类:
其他好文 时间:
2020-06-12 11:11:36
阅读次数:
59
sleep()方法(休眠)是线程类(Thread)的静态方法,调用此方法会让当前线程 暂停执行指定的时间,将执行机会(CPU)让给其他线程,但是对象的锁依然保 持,因此休眠时间结束后会自动恢复(线程回到就绪状态,请参考第 66 题中的线 程状态转换图)。wait()是 Object 类的方法,调用对 ...
分类:
其他好文 时间:
2020-06-01 13:38:02
阅读次数:
73
hash、list、set、sorted set,可存储2^32-1个元素 string长度为512m字节,即2^(9+10+10+3)=2^32 优点:速度快,数据类型多,可持久化,支持主从备份,水平扩展 快的原因:c语言开发 纯内存操作 单进程单线程 epoll多路复用 高效的数据结构 每次传输 ...
分类:
其他好文 时间:
2020-05-27 20:12:43
阅读次数:
77
redis号称单机QPS可达10万。为什单线程的redis竟然能达到这么高的qps? 网上有很多大佬已经给我们总结好了: 1、完全是内存操作 2、单线程处理 3、高效的数据结构,redis有自己的一套数据结构 4、使用多路复用i/o模型,非阻塞 5、其他方面的优化 我想多问几个问题: 第一点,red ...
分类:
其他好文 时间:
2020-05-24 00:26:31
阅读次数:
71
Reids的特点 Redis本质上是一个Key Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作, 定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key ...
分类:
其他好文 时间:
2020-05-19 22:44:56
阅读次数:
97
1、什么是Redis?简述它的优缺点? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是 ...
分类:
其他好文 时间:
2020-05-19 20:37:48
阅读次数:
93
Vector、ArrayList使用数组存储,插入效率低;LinkedList使用链表存储,插入效率高Vector线程安全,Arraylist非线程安全,Vector比ArrayList性能低ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,
分类:
其他好文 时间:
2020-05-12 20:25:02
阅读次数:
73