多线程
小fli
这个作者很懒,什么都没留下…
展开
-
java多线程状态图解
引入bxdteacher对线程的图解作为学习笔记原创 2019-08-09 11:52:38 · 170 阅读 · 0 评论 -
Java多线程下的单例设计模式
/*多线程下的单例引入bxdteacher的代码*///饿汉式/*class Single{ private static final Single s = new Single(); private Single(){} public static Single getInstance() { return s;//这里只有一句话,不会出现安全问题 }}...原创 2019-08-27 16:59:00 · 167 阅读 · 0 评论 -
Java多线程同步函数与同步代码块
package multithreading;//引用bxdteacher的代码/*同步函数的使用的锁是this;同步函数和同步代码块的区别:同步函数的锁是固定的this。同步代码块的锁是任意的对象。建议使用同步代码块。*/class Ticket1 implements Runnable{ private int num = 100;// Object obj = ne...原创 2019-08-22 21:52:58 · 151 阅读 · 0 评论 -
Java多线程的线程共享数据的判断以及同步函数
package multithreading;//引入bxdteacher的代码/*需求:储户,两个,每个都到银行存钱每次存100,,共存三次。*/class Bank { private int sum;//线程的共享数据// private Object obj = new Object(); public synchronized void add(int num)// 同...原创 2019-08-22 17:05:00 · 264 阅读 · 0 评论 -
Java多线程安全问题以及同步代码块
package multithreading;引入bxdteachet的代码/*需求:卖票。*//*线程安全问题产生的原因:1,多个线程在操作共享的数据。2,操作共享数据的线程代码有多条。当一个线程在执行操作共享数据的多条代码过程中,其他线程参与了运算。就会导致线程安全问题的产生。解决思路;就是将多条操作共享数据的线程代码封装起来,当有线程在执行这些代码的时候,其他线程时...原创 2019-08-21 21:48:33 · 168 阅读 · 0 评论 -
java多线程第二种方式:实现Runnable接口
引用bxdteacher的代码和笔记/*创建线程的第一种方式:继承Thread类。创建线程的第二种方式:实现Runnable接口。1,定义类实现Runnable接口。2,覆盖接口中的run方法,将线程的任务代码封装到run方法中。3,通过Thread类创建线程对象,并将Runnable接口的子类对象作为Thread类的构造函数的参数进行传递。为什么?因为线程的任务都封装在Runnab...原创 2019-08-12 14:01:01 · 128 阅读 · 0 评论 -
Java多线程静态函数的锁
package multithreading;//引入bxdteacher的代码/*静态的同步函数使用的锁是 该函数所属字节码文件对象可以用 getClass方法获取,也可以用当前 类名.class 表示。*/class Ticket2 implements Runnable{ private static int num = 100;// Object obj = new...原创 2019-08-23 11:20:29 · 231 阅读 · 0 评论 -
java多线程多条执行路径运行一条线程出问题并不会影响其他线程的执行
package multithreading;//至少三条执行路径(三条线程),一条执行路径出问题,不会影响其他执行路径的执行class Demo extends Thread{ private String name; Demo(String name) {// super(name); this.name = name; } public void run() { ...原创 2019-08-07 11:33:51 · 635 阅读 · 0 评论 -
java创建线程方式一继承Thread类以及run()方法、start()方法、线程名字
package multithreading;/*如何创建一个线程呢?创建线程方式一:继承Thread类。步骤:1,定义一个类继承Thread类。2,覆盖Thread类中的run方法。3,直接创建Thread的子类对象创建线程。4,调用start方法开启线程并调用线程的任务run方法执行。可以通过Thread的getName()方法获取线程的名称 Thread-编号(从0开始)...原创 2019-08-07 11:17:55 · 1144 阅读 · 1 评论 -
java多线程概述1以及垃圾回收器线程
package multithreading;/*进程:正在进行中的程序(直译).线程:就是进程中一个负责程序执行的控制单元(执行路径)一个进程中可以多执行路径,称之为多线程。一个进程中至少要有一个线程。开启多个线程是为了同时运行多部分代码。每一个线程都有自己运行的内容。这个内容可以称为线程要执行的任务。多线程好处:解决了多部分同时运行的问题。多线程的弊端:线程太多回到效率的降低...原创 2019-08-07 11:04:47 · 316 阅读 · 0 评论 -
Java多线程死锁示例
package multithreading;/*死锁:常见情景之一:同步的嵌套。引入bxdteacher的代码*/class Test implements Runnable{ private boolean flag; Test(boolean flag) { this.flag = flag; } public void run() { if(flag...原创 2019-08-27 17:52:51 · 151 阅读 · 0 评论