第7章线程.ppt
《第7章线程.ppt》由会员分享,可在线阅读,更多相关《第7章线程.ppt(27页珍藏版)》请在三一文库上搜索。
1、第 7 章 线程,雷擎 对外经济贸易大学信息学院,content,7.1 多线程基础 7.2 线程的生命周期 7.3 生产者与消费者问题 实验:多线程,7.1 多线程基础,7.1.1 线程的概念 7.1.2 Thread类和Runnable接口 7.1.3 在程序中实现多线程,7.1.1 线程的概念,线程和进程都是指正在执行的程序代码,是与计算机中的并发执行相关的概念。 通过操作系统的调度,多个进程和线程可以同时、独立的执行。,线程与进程的区别: 多个进程的内部数据和状态都是完全独立的,而多线程是共享一块内存空间和一组系统资源,有可能互相影响. 线程本身的数据通常只有寄存器数据,以及一个程序
2、执行时使用的堆栈,所以线程的切换比进程切换的负担要小。 多线程是Java的内嵌特性,Java 虚拟机允许应用程序并发地运行多个执行线程。,线程与进程的区别,7.1.2 Thread类和Runnable接,Java中实现多线程有两种途径:继承Thread类或者实现Runnable接口。Thread类实现Runnable接口。,创建线程的方式,1. 继承类Thread public class mythread extends Thread 2.实现Runnable接口 public class mythread extends SuperClass implements Runnable 上述两
3、种方法中都可用类Thread产生线程的对象 Thread newthread;,定义一个Thread类的子类,步骤: 1. 定义一个Thread类的子类,并override run()方法,在这个方法里是你希望这个线程运行的代码 2. 创建一个这个新类的对象 3. 调用Thread对象的start()方法来启动线程,实现Runnable接口,步骤: 1. 定义一个类,实现Runnalbe接口,并override run()方法,在这个方法里是你希望这个线程运行的代码 2. 创建一个这个新类的对象 3. 创建一个Thread类的对象,用刚才的Runnable对象作为构造函数参数 4. 调用Thr
4、ead对象的start()方法来启动线程,7.1.3 在程序中实现多线程,一个龟兔赛跑的例子,使用线程模拟了龟兔在1000米赛跑过程。,1.定义一个Thread类的子类,class Runner extends Thread String name; double distance; Random rand = new Random(); public Runner(String name) this.name = name; ,public void run() distance = 0.0; for (int i = 0; i 10; i+) distance += 100.0; int
5、sleepTime = rand.nextInt(2000); System.out.println(name +“跑了“+ distance + “米t休息“ + sleepTime + “毫秒“); try Thread.sleep(sleepTime); catch (InterruptedException inte) System.out.println(name+“跑到了终点“); ,使用定义好的Runner线程,import java.util.Random; public class DemoThreadSimple public static void main(String
6、 args) / 创建并命名每个线程 Runner rabbit = new Runner(“rabbit“); Runner tortoise = new Runner(“tortoise”); rabbit.setPriority(Thread.NORM_PRIORITY); tortoise.setPriority(Thread.NORM_PRIORITY+5); rabbit.start();/ 启动线程1 tortoise.start();/ 启动线程1 ,2.实现Runnable接口,class JumpBean implements Runnable private int sl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 线程
链接地址:https://www.31doc.com/p-3132091.html