09 2021 档案

摘要:ReentrantLock:可重入锁,实现与Lock 显示锁:可通过lock和unlock方法进行显示的加锁释放锁 独占锁:同时只能有一个线程持有锁 可重入锁:同一个锁对象,同一个线程可以重入 在ReentrantLock的构造函数中提供了两种公平性选择,非公平的锁(默认)和一个公平的锁,通过Fai 阅读全文
posted @ 2021-09-21 14:19 水映苑 阅读(62) 评论(0) 推荐(0)
摘要:excute方法: 源码 submit方法通过提交参数构造FutrueTask,然后执行excute(FutrueTask)方法,返回一个future对象 public Future<?> submit(Runnable task) { if (task == null) throw new Nul 阅读全文
posted @ 2021-09-13 19:55 水映苑 阅读(305) 评论(0) 推荐(0)
摘要:1.shutdown方法 //不会接收新任务,但会继续处理队列中的任务 public void shutdown() { final ReentrantLock mainLock = this.mainLock; mainLock.lock(); try { //校验权限(如果没有声明或者配置Sec 阅读全文
posted @ 2021-09-12 14:57 水映苑 阅读(504) 评论(0) 推荐(0)
摘要:1.execute(Runnable),任务提交方法 public void execute(Runnable command) { if (command == null) throw new NullPointerException(); //ctl:记录线程池是生命周期状态和当前工作线程数; 阅读全文
posted @ 2021-09-11 21:19 水映苑 阅读(331) 评论(0) 推荐(0)
摘要:线程池生命周期状态 RUNNING:接收新任务并执行队列中的任务 SHUTDOWN:不会接收新任务,但会继续处理队列中的任务 STOP:不接受新任务,不处理队列中的任务,并中断正在进行的任务 TIDYING:所有的任务都已终止,工作线程数为零,在转为此状态后可以执行一个terminated()的钩子 阅读全文
posted @ 2021-09-11 21:19 水映苑 阅读(73) 评论(0) 推荐(0)
摘要:1.struts2版本号:2.5.26 。 2.自定义拦截器(此处,struts2已经对请求数据进行了处理,文件表单数据也可以获取,但处理不了文件) public class XssInterceptor extends AbstractInterceptor { @Override public 阅读全文
posted @ 2021-09-02 08:37 水映苑 阅读(106) 评论(0) 推荐(0)