- 博客(2)
- 收藏
- 关注
原创 HashMap常见问题
主要有三种方法①、再哈希法同时构造多个不同的哈希函数,等发生哈希冲突时就使用第二个、第三个……等其他的哈希函数计算地址,直到不发生冲突为止。虽然不易发生聚集,但是增加了计算时间。(这里我想到了布隆过滤器的原理,通过多个hash算法对新添加的值做预判断,对于新添加的值多重hash过后落入的节点不为空,说明该值可能在集合中存在,但是存在误判的概率。而如果多重hash判断结果为空,那集合中一定不存在该元素。
2024-07-18 13:40:07
685
1
原创 AIO、BIO、NIO、IO多路复用
第一阶段,判断有没有事件发生(或判断数据有没有准备好,或判断Socket是否就绪)第二阶段,在数据准备好以后,执行真正的读(或写)操作,将数据从内核空间拷贝到用户空间。通过第一个阶段是否阻塞判断是阻塞IO还是非阻塞IO,通过两个阶段是否有阻塞判断是同步IO还是异步IO。2、BIO在Socket多的情况下,线程数就会很多,因为BIO一个任务分配一个线程,大量线程处于阻塞,且会导致频繁的上下文切换,导致较大的性能开销。
2024-07-15 22:57:14
1054
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人