![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线程类
罗啦啦
一个阳光、开朗、热情的大学生,对新技术非常关注,视野开拓,擅长编程,自学能力强,对各种新事物充满好奇心,喜欢大胆尝试和挑战。
展开
-
java面试题:线程生命周期图解
转载 2016-10-23 13:12:14 · 600 阅读 · 0 评论 -
ThreadLocal的底层实现原理与应用场景
维持线程封闭性的一种规范方法是使用ThreadLocal。它提供了set和get等访问方法,这些方法为每个使用该变量的线程都存有一份独立的副本,因此get方法总是返回由当前执行线程在调用set时设置的最新值。那么,我们就看看关于这两个方法的JDK源码: public void set(T value) { Thread t = Thread.currentThread();原创 2017-04-22 14:14:51 · 8352 阅读 · 2 评论 -
Java常见面试题:线程的生命周期
原创 2017-03-12 16:29:06 · 1561 阅读 · 0 评论 -
sleep和wait的区别
1、这两个方法来自不同的类分别是,sleep来自Thread类,而wait来自Object类。sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用了b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。sleep不出让转载 2017-03-12 10:25:26 · 407 阅读 · 0 评论 -
Spring中AOP操作的相关术语
Joinpoint(连接点):类里面可以被增强的方法,这些方法称为连接点 Pointcut(切入点):所谓切入点是指我们要对哪些Joinpoint进行拦截的定义. Advice(通知/增强):所谓通知是指拦截到Joinpoint之后所要做的事情就是通知.通知分为前置通知,后置通知,异常通知,最终通知,环绕通知(切面要完成的功能) Aspect(切面):是切入点和通知原创 2017-02-07 15:00:55 · 1701 阅读 · 0 评论 -
你真的了解Java中的interrupt()中断线程吗?
很多Java初级开发者(包括我)都知道终止一个正在运行的线程最好的方法不是用JDK已废弃的stop()方法,而是用interrupt()或条件变量,但事实上真就那么简单吗?很多东西一旦涉及到多线程,问题就复杂起来,你必须考虑很多问题。今天我们就好好聊聊Java中的一个interrupt()中断线程方法,同时涉及到了很多其他问题(都是坑啊,一不小心就进去了)。中断可以理解为线程的一个标志原创 2017-05-11 12:47:49 · 1099 阅读 · 0 评论 -
面向对象的设计原则和生产者消费者代码举例
有人说这个世界上只有两种人:生产者和消费者。要么你生产某种东西,要么你消费某种别人生产的东西。当然,你也可能是既是生产者又是消费者,即在某一产品上你是生产者,在另一产品上又是消费者。但在某个特定的产品上,一个人只能是生产者或者消费者,而不能二者同时具有。当然,在一个具体的产品上,你可能既不是生产者又不是消费者。但对于任何特定的产品,它一定存在至少一个生产者和一个消费者。原创 2017-05-12 10:35:53 · 833 阅读 · 0 评论 -
线程安全问题的分析及代码示例
资源类:Student设置学生数据:SetThread(生产者)获取学生数据:GetThread(消费者)测试类:StudentDemo * 线程安全问题的判断依据: * A:是否是多线程环境 是 * B:是否有共享数据 是 * C:是否有多条语句操作共享数据 是 * 若同时满足以上三个条件,则可判定程序可能出现线程安全问题原创 2016-11-20 18:07:56 · 1198 阅读 · 0 评论 -
java中实现多线程的方式
转载 2016-11-11 14:42:00 · 261 阅读 · 0 评论