Java 实现Runnable接口 资源共享
来源:互联网 发布:爱情藏头诗软件 编辑:程序博客网 时间:2024/05/21 07:50
一.先看两段代码
通过继承Thread类
- class MyThread extends Thread{
- private int ticket = 10;
- private String name;
- public MyThread(String name){
- this.name =name;
- }
- public void run(){
- for(int i =0;i<500;i++){
- if(this.ticket>0){
- System.out.println(this.name+"卖票---->"+(this.ticket--));
- }
- }
- }
- }
- public class ThreadDemo {
- public static void main(String[] args) {
- MyThread mt1= new MyThread("一号窗口");
- MyThread mt2= new MyThread("二号窗口");
- MyThread mt3= new MyThread("三号窗口");
- mt1.start();
- mt2.start();
- mt3.start();
- }
- }
- 一号窗口卖票---->10
- 一号窗口卖票---->9
- 二号窗口卖票---->10
- 一号窗口卖票---->8
- 一号窗口卖票---->7
- 一号窗口卖票---->6
- 三号窗口卖票---->10
- 一号窗口卖票---->5
- 一号窗口卖票---->4
- 一号窗口卖票---->3
- 一号窗口卖票---->2
- 一号窗口卖票---->1
- 二号窗口卖票---->9
- 二号窗口卖票---->8
- 三号窗口卖票---->9
- 三号窗口卖票---->8
- 三号窗口卖票---->7
- 三号窗口卖票---->6
- 三号窗口卖票---->5
- 三号窗口卖票---->4
- 三号窗口卖票---->3
- 三号窗口卖票---->2
- 三号窗口卖票---->1
- 二号窗口卖票---->7
- 二号窗口卖票---->6
- 二号窗口卖票---->5
- 二号窗口卖票---->4
- 二号窗口卖票---->3
- 二号窗口卖票---->2
- 二号窗口卖票---->1
通过实现Runnable接口
- class MyThread1 implements Runnable{
- private int ticket =10;
- private String name;
- public void run(){
- for(int i =0;i<500;i++){
- if(this.ticket>0){
- System.out.println(Thread.currentThread().getName()+"卖票---->"+(this.ticket--));
- }
- }
- }
- }
- public class RunnableDemo {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- //设计三个线程
- MyThread1 mt = new MyThread1();
- Thread t1 = new Thread(mt,"一号窗口");
- Thread t2 = new Thread(mt,"二号窗口");
- Thread t3 = new Thread(mt,"三号窗口");
- t1.start();
- t2.start();
- t3.start();
- }
- }
- 一号窗口卖票---->10
- 三号窗口卖票---->9
- 三号窗口卖票---->7
- 三号窗口卖票---->5
- 三号窗口卖票---->4
- 三号窗口卖票---->3
- 三号窗口卖票---->2
- 三号窗口卖票---->1
- 一号窗口卖票---->8
- 二号窗口卖票---->6
- MyThread1 mt1 = new MyThread1();
- MyThread1 mt2 = new MyThread1();
- MyThread1 mt2 = new MyThread1();
- Thread t1 = new Thread(mt1,"一号窗口");
- Thread t2 = new Thread(mt2,"二号窗口");
- Thread t3 = new Thread(mt3,"三号窗口");
总结一下,,实现Runable除了避免单继承的局限外,还有个好处就是能实现不同进程资源共享,而继承Thread没有这个功能。并不是这个特点是两者的绝对区别,继承Runable你可以选择不共享。
1 0
- Java 实现Runnable接口 资源共享
- java多线程------实现Runnable接口创建多进程,实现资源共享
- Java学习笔记之实现Runnable接口可以资源共享(卖票系统)
- 使用Runnable实现资源共享
- 使用Runnable接口实现资源共享的一些心得
- JAVA 实现Runnable接口
- JAVA 实现Runnable接口
- JAVA 实现Runnable接口
- 如果用Runnable就可以实现资源共享[Java多线程]
- java runnable接口实现多线程
- java多线程实现:Runnable接口
- 在程序开发中只要是多线程肯定永远以实现Runnable接口为主,因为实现Runnable,可以实现资源共享
- java 通过实现Runnable接口实现多线程
- java 用实现Runnable 接口实现多线程
- JAVA 实现Runnable接口实现多线程
- Thread-实现java.lang.Runnable接口
- Java 创建线程 实现Runnable接口
- Java 线程启动(实现Runnable接口)
- MySQL中的常用字符串函数
- Python参数传递 - 引用传递&值传递
- android 降低minSdkVersion的版本
- Git 少用 Pull 多用 Fetch 和 Merge
- 进程和线程
- Java 实现Runnable接口 资源共享
- ios开发之 MPMoviePlayerController 视频播放器
- Eclipse+BlueStacks调试Android应用
- 关于sdk更新后报错
- Bourne Shell编程杂记
- QT 下TCP客户端
- C/C++中volatile关键字详解
- bzoj4569: [Scoi2016]萌萌哒
- 函数节流和防抖动