1 /* 2 3 线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程,一个进程中是可以有多个线程的,这个应用程序称之为多线程 4 5 单线程:即有多个任务只能依次执行,当上个任务执行结束后,下个任务开始执行 6 7 多线程:即有多个任务可以同时执行 8 9 主线程:jvm ...
分类:
编程语言 时间:
2020-04-24 21:42:59
阅读次数:
85
1. Reactor三种线程模型 1.1. 单线程模型 Reactor单线程模型,指的是所有的IO操作都在同一个NIO线程上面完成,NIO线程的职责如下: 1)作为NIO服务端,接收客户端的TCP连接; 2)作为NIO客户端,向服务端发起TCP连接; 3)读取通信对端的请求或者应答消息; 4)向通信 ...
分类:
编程语言 时间:
2020-04-23 21:28:44
阅读次数:
85
对于通常的developer(特别是那些具备并行计算/多线程背景知识的developer)来讲,js的异步处理着实称得上诡异。而这个诡异从结果上讲,是由js的“单线程”这个特性所导致的。 我曾尝试用“先定义后展开”的教科书方式去讲解这一块的内容,但发现极其痛苦。因为要理清楚这个东西背后的细节,并将其 ...
分类:
编程语言 时间:
2020-04-23 20:45:13
阅读次数:
82
2019.9.16更新:增加了对缓存雪崩,缓存穿透,缓存击穿的描述。并附上本人对Redis单线程,多线程实现的理解。 评论区有一些争执,但是大家都很友善,比如这个单线程是否能让Redis更快尤其是大家争论的重点。 (以下单线程仅指Redis负责存取这块的线程只有一个,而非Redis中只有一个进程) ...
分类:
其他好文 时间:
2020-04-22 20:06:28
阅读次数:
56
两者简介: HashMap简介: HashMap是基于哈希表实现的,每一个元素是一个key(数据类型必须一致)-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下 ...
分类:
其他好文 时间:
2020-04-22 10:13:13
阅读次数:
67
为什么需要进度条? 这里有200个左右的文件,每个文件里面有1000条数据库插入语句,总共约200 000条记录。 在单线程情况下,执行插入时界面会失去响应,完成插入需要长达8个小时。 不会有人认为界面没有卡死,即使是我自己写的程序,也不禁怀疑是否程序卡死。 进度条,以及各种执行情况显示,在这种情况 ...
分类:
编程语言 时间:
2020-04-21 21:18:22
阅读次数:
87
redis 常见的面试题 Redis 持久化机制 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题 热点数据和冷数据是什么 Memcache与Redis的区别都有哪些? 单线程的redis为什么这么快 redis的数据类型,以及每种数据类型的使用场景,Redis 内部结构 redis的过期策略 ...
分类:
其他好文 时间:
2020-04-20 20:05:37
阅读次数:
69
| | ArrayList|LinkedList | Vector | | | | | | | 线程 | 不安全 | 不安全 | 安全 | |底层实现 | 数组 | 双向链表 | 数组 | | 随机访问 | 效率高 | 效率低 | 效率高 | | 随机插入删除 | 效率低 | 效率高 | 效率低 | ...
分类:
其他好文 时间:
2020-04-16 22:11:53
阅读次数:
78
Js异步机制 是一门单线程语言,所谓单线程,就是指一次只能完成一件任务,如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。这种模式的好处是实现起来比较简单,执行环境相对单纯,坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应也就 ...
分类:
Web程序 时间:
2020-04-16 13:41:47
阅读次数:
97
ThreadLocal ThreadLocal 适用于变量在线程间隔离,而在方法或类间共享的场景。 代码 1 @RestController 2 public class ThreadLocalController { 3 private static final ThreadLocal<Strin ...
分类:
编程语言 时间:
2020-04-15 22:57:56
阅读次数:
73