多线程
奇怪的coder
一个奇怪的程序员
展开
-
手写一个ReentrantLock锁
手写ReentrantLock最近学习了Java语言中锁相关知识,看了一下ReentrantLock源码,自己手写了一个ReentrantLock。ReentrantLock是一个可重入锁,并且在源码中通过构造函数可以使其在公平锁和非公平锁之间转换。可重入锁即当前线程可以在不释放锁的情况下多次获取锁,但是释放锁的次数应与获取锁的次数相同,否则会抛出IllegalMonitorStateExc...原创 2020-02-01 18:18:07 · 3164 阅读 · 0 评论 -
线程终止的方法
学习心得线程终止的3种方法:stop(),interrupt(),使用标志位。总结1.stop()方法会直接杀死线程不论执行到哪里,破坏了线程的安全性,已停止使用。public class StopThread extends Thread{ public int i=0; public int j=0; @Override public void run(...原创 2020-02-01 17:38:27 · 514 阅读 · 0 评论 -
线程状态
线程状态线程状态分为6种,分别为新建(New),可运行状态(Runnable),不带超时的等待状态(Waiting),带超时的等待状态(TimedWaiting),阻塞状态(Blocked),结束状态(Terminate)。进入各个状态的方法...原创 2020-02-01 17:36:54 · 352 阅读 · 0 评论