摘要: Semaphore可以控制并发数量,通过分发许可证的方式,acquire就是去获取许可证,如果获取到了的话,就可以执行,如果获取不到的话,就会去同步队列里阻塞. release会释放许可证并唤醒同步队列的线程. public Semaphore(int permits) { sync = new N 阅读全文
posted @ 2020-07-04 10:49 jesscia5 阅读(101) 评论(0) 推荐(0)
摘要: AtomicInteger getAndSet方法 修改值并返回旧值 public final int getAndSet(int newValue) { return unsafe.getAndSetInt(this, valueOffset, newValue); //调用unsafe的方法 } 阅读全文
posted @ 2020-07-03 15:22 jesscia5 阅读(148) 评论(0) 推荐(0)
摘要: 可以通过ReentrantLock.newCondition()来获得Condition对象 public Condition newCondition() { return sync.newCondition(); //实际上是调用AQS的方法 } final ConditionObject ne 阅读全文
posted @ 2020-07-03 14:42 jesscia5 阅读(167) 评论(0) 推荐(0)
摘要: LinkedBlockingQueue public LinkedBlockingQueue() { this(Integer.MAX_VALUE); } public LinkedBlockingQueue(int capacity) { if (capacity <= 0) throw new 阅读全文
posted @ 2020-07-03 11:07 jesscia5 阅读(138) 评论(0) 推荐(0)
摘要: public ReentrantReadWriteLock(boolean fair) { sync = fair ? new FairSync() : new NonfairSync(); readerLock = new ReadLock(this); writerLock = new Writ 阅读全文
posted @ 2020-07-02 22:26 jesscia5 阅读(122) 评论(0) 推荐(0)
摘要: ReentrantLock分为公平锁和非公平锁,默认为非公平锁 ReentrantLock内部有一个Syn类,继承AQS final void lock() { if (compareAndSetState(0, 1))//cas操作修改state setExclusiveOwnerThread(T 阅读全文
posted @ 2020-07-02 09:13 jesscia5 阅读(150) 评论(0) 推荐(0)
摘要: 1.sleep 与 wait 的区别 sleep不会让出锁,而wait会让出锁. 2.调用线程的interrupt方法,即使线程wait或者sleep也能感知到,并抛出异常 3.线程的6种状态, New(新创建) Runnable(可运行) Blocked(被阻塞) Waiting(等待) Time 阅读全文
posted @ 2020-07-01 22:08 jesscia5 阅读(127) 评论(0) 推荐(0)
摘要: spring的配置文件 获取spring容器的对象 打开debug模式追踪spring的源码 DefaultListableBeanFactory就是spring的容器用来管理bean对象 DefaultListableBeanFactory实现了BeanDefinitionRegistry接口,在 阅读全文
posted @ 2020-06-13 15:45 jesscia5 阅读(187) 评论(0) 推荐(0)
摘要: 三次握手步骤 1.客户端发送连接请求SYN包 其中seq=x;客户端进入SYN-SENT阶段 2.服务器端收到SYN包之后,会发送一个SYN+ACK包,ack=x+1(ack为确认号,以为SYN包中不包含数据,但是tcp规定SYN也消耗一个字节),seq=y 服务端进入SYN-RECD阶段 3.客户 阅读全文
posted @ 2020-06-05 11:24 jesscia5 阅读(212) 评论(0) 推荐(0)
摘要: http是明文传输,所以存在着别截取的风险,因此发明https协议,它是密文传输. 加密分为 对称加密 和非对称加密 对称加密就是服务端 和 客户端 都用 同一把秘钥进行加密 非对称加密就是服务端 和 客户端 有 公钥 ,私钥两把钥匙,用公钥加密的文件用私钥解密,用私钥的文件用公钥解密 https的 阅读全文
posted @ 2020-06-05 10:52 jesscia5 阅读(198) 评论(0) 推荐(0)