![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
thread
文章平均质量分 64
xiha_zhu
这个作者很懒,什么都没留下…
展开
-
synchronized关键字
多线程编程中出现线程安全问题往往是因为多个线程访问某一共享、可变数据(一个变量、一个对象或是一个文件等)时产生。共享意味着该资源可以被多个线程同时访问;可变意味着该资源可以在其生命周期内被修改。 并发模式在解决线程安全采用的方案都是序列化访问临界资源,即保证同一时刻,只能有一个线程访问临界资源,也称作同步互斥访问。java提供synchronized和Lock锁两种方式来实现同步互斥访问。 synchronized关键字修饰静态方法时,锁住的是该类的class对象;修饰非静态方法时,锁住的是当前实.原创 2021-04-27 16:22:43 · 90 阅读 · 0 评论 -
volatile关键字
原文出处:海子 Java并发编程:volatile关键字解析 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volati...原创 2018-04-26 12:45:43 · 114 阅读 · 0 评论 -
Java线程
java中,线程生命周期大体有5种状态:新建(NEW)、就绪(RUNNABLE)、运行(RUNNING)、阻塞(BLOCKED)和死亡(DEAD)。用new运算符建立一个线程对象后,该线程就处于新生状态。通过调用start()方法,线程进入就绪状态;处于就绪状态的线程一旦得到CPU,就进入运行状态并自动调用自己的run()方法,进入运行状态;处于运行状态的线程,执行sle...原创 2018-03-27 00:19:03 · 597 阅读 · 0 评论 -
Java多线程编程
1、通过继承Thread类创建线程(1).首先定义一个类去继承Thread父类,重写父类中的run()方法。在run()方法中加入具体的任务代码或处理逻辑。(2).创建Thread子类的实例,也就是线程对象(3).调用start方法,启动线程,隐含的调用run()方法。 2、通过实现Runnable接口创建线程(1).定义一个类实现Runnable接口,重写接口中的run()方法。在run...原创 2018-03-27 00:16:27 · 763 阅读 · 0 评论