首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
QQQQ105677
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
8
文章 8
沸点 0
赞
8
返回
|
搜索文章
最新
热门
leetcode 多线程题集
1. 按序打印 方法一的volatile变量也可以换成原子自增类AtomicInteger。 这里因为没有多线程同时写,所以flag++也可以。 方法3可能写出错误的代码,注意点1:必须得加一个flag防止调度时线程1先执行唤醒,线程2然后在wait。这样线程2将永远沉睡。注意…
JUC 源码:信号量Semaphore ,倒计时CountDownLatch 与循环栅栏CyclicBarrier
信号量用于控制访问共享资源的线程的数量。信号量将资源抽象成许可,维护一个许可池子。获取资源减少许可,释放资源增加许可。池子本身也是一个多线程共享的资源,信号量保证多线程下对池子操作的安全性,通过自旋CAS来保证这一点。 一个线程中调用release之前的操作 happense …
面试向 计算机网络总结 :传输层篇
只能保证数据无损坏,可传达,不保证有序。 有比特差错信道的情况下:数据可能存在比特差错。 因此首先接收方需要知道分组是否有错,即具备差错检测的能力。 其次,当接收方检测出分组存在错误时,需要告知发送方,即发送ACK与NAK。 最后,当发送方收到NAK时,发送方知道自己的分组存在…
JAVA 内存模型与happens before 一致性
根据JLS定义。JAVA内存模型描述了一些规则,这些规则用于判断一个程序的执行轨迹是否合法,怎么判断呢?利用JMM描述的规则来考察执行轨迹中的读动作并且检查这些读动作观察到的写是否合法。 简单来说就是:JMM用来分析程序中访问内存操作的合法性。 考察并发程序的表现时,无需关注重…
JDK 源码解析 :ConcurrentHashMap 1.7
ConcurrentHashMap是一个Segment数组。而一个Segement是一个HashEntry数组。而一个HashEntry则存储具体的key-value对。同时还扮演着链表节点的角色,用next执行链表中下一个节点。 ConcurrentHashMap借助segm…
JDK 容器 List接口与实现类
List 是一种有序,可扩展大小的容器,允许包含重复元素。 LIst接口继承了collection接口,并增加了下列方法。 collection接口中,作为set与list接口的父接口。是不存在索引这个概念的。对于一个元素,collection接口只提供两种信息,在容器中,或不…
JDK容器 Queue接口
队列接口用于在处理数据之前暂存数,队列接口定义了6种方法。 队列的操作都是围绕着队列的头部与尾部节点进行。 队列通常是FIFO顺序。无论队列顺序是什么,remove()与poll()都是移除队列的头部节点。队列的顺序决定了新插入节点的插入位置。 java.util中的实现是无界…
JDK 容器概览 Collection
概览Collection接口方法基本操作批量操作批量增删查清空批量保留(俩集合交集)容器转换成数组子接口Set:集合不能拥有重复元素List:序列有序容器,可以有重复元素,通常可以控制每一个元素的插入
AQS 草稿
成功则修改头节点为自己的节点,旧头节点移出队列。失败则阻塞之前修改前驱快照ws再次尝试获取资源。 成功则修改头节点为自己节点,旧头节点移出队列。失败则阻塞。 尝试释放独占资源,若成功,则唤醒头节点的后继(如果存在需要唤醒的后继)。若失败则返回false。 假设线程A,B先后尝试…
JAVA多线程基础
同步synchronization是线程通信的一种机制,JAVA用monitor监视器(锁)来实现同步。每一个JAVA中的对象都关联一个监视器(锁)。任何一个时刻只有一个线程可以锁住监视器,其他线程会阻塞直到他们可以锁住监视器。一个线程一次可能锁住多个监视器(AKA获得多个监视…
下一页
个人成就
文章被阅读
6,384
掘力值
202
关注了
7
关注者
1
收藏集
9
关注标签
6
加入于
2020-04-30