- 博客(2)
- 资源 (4)
- 收藏
- 关注
原创 [java 并发]你真的了解线程池吗?
为什么 线程池预先创建若干数量的线程,用户不能直接对线程的创建进行控制,重复使用固定或较为固定的线程来完成任务执行,消除了频繁创建和消亡线程的资源开销,面对过量任务的提交也能够平缓劣化 线程池种类 Executors.newCachedThreadPool() 可缓存线程池,当线程池大小超过了处理任务所需的线程,那么就会回收部分空闲(一般是60秒无执行)的线程,当有任务来时,智能的添加新线程来执行。 队列:LinkedBlockingDeque - 由链表结构组成的双向阻塞队列 Executors.
2020-08-23 21:10:07 247
原创 redis的数据类型和底层实现
String 使用SDS(simple Dynamic String)存储,类似arraylist,可通过预分配冗余空间减少内存的频繁分配 简单的key-value类型,value不仅可以是string,也可以是数字 编码方式:raw、int、embstr String能够进行扩容,会有一定的free空间,如果删除部分字段的时候空闲时间不会立即删除而是留给下一次操作,如果下一次操作还是没有操作free空间,才会删除回收。而且是按照长度来寻找字符串。 Hash HashTable、ziplist 内部..
2020-08-16 20:18:18 287
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人