下载此文档

java多线程机制 java编程 java编程方案策划.ppt


文档分类:IT计算机 | 页数:约20页 举报非法文档有奖
1/20
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/20 下载此文档
文档列表 文档介绍
第八章:Java多线程技术
题纲
概念理解
概念:线程指进程中的一个执行场景,也就是执行流程,那么进程和线程有什么区别呢?
每个进程是一个应用程序,都有独立的内存空间
同一个进程中的线程共享其进程中的内存和资源
注意:共享的内存是堆内存和方法区内存,栈内存不共享,每个线程有自己的。
进程的概念:一个进程对应一个应用程序。例如:在windows操作系统启动Word就表示启动了一个进程。在java 的开发环境下启动JVM,就表示启动了一个进程。现代的计算机都是支持多进程的,在同一个操作系统中,可以同时启动多个进程。
多进程有什么作用
单进程计算机只能做一件事情。
玩电脑,一边玩游戏(游戏进程)一边听音乐(音乐进程)。
对于单核计算机来讲,在同一个时间点上,游戏进程和音乐进程是同时在运行吗?不是。因为计算机的CPU只能在某个时间点上做一件事。由于计算机将在“游戏进程”和“音乐进程”之间频繁的切换执行,切换速度极高,人类感觉游戏和音乐在同时进行。
多进程的作用不是提高执行速度,而是提高CPU的使用率。
进程和进程之间的内存是独立的。
概念理解
什么是线程
线程是一个进程中的执行场景。一个进程可以启动多个线程。
多线程有什么作用?
多线程不是为了提高执行速度,而是提高应用程序的使用率。线程和线程共享“堆内存和方法区内存”,栈内存是独立的,一个线程一个栈。可以给现实世界中的人类一种错觉:感觉多个线程在同时并发执行。
java程序的运行原理?
java 命令会启动java 虚拟机,启动JVM,等于启动了一个应用程序,表示启动了一个进程。该进程会自动启动一个“主线程”,然后主线程去调用某个类的main方法。所以main方法运行在主线程中。在此之前的所有程序都是单线程的。
概念理解
Thread类中创建线程最重要的两个方法为:
Public void run()
Public void start()
采用Thread类创建线程,用户只需要继承Thread,覆盖Thread中的run方法,父类Thread中的run方法没有抛出异常,那么子类也不能抛出异常,最后采用start启动线程即可
创建Thread类的子类,首先是声明子类的构造方法,其次是用自己定义的run( )方法去覆盖Thread类的run( )方法,即将自己要执行的程序区块写入run( )方法中。
例:使用Thread创建线程
通过Thread类创建线程
Runnable接口
创建线程对象的另一个途径是实现Runnable接口,而Runnable接口只有一个方法run( ),用户新建线程的操作由这个方法来决定。run( )方法必须由实现此接口的类来实现。定义好run( )方法之后,当用户程序需要建立新线程时,只要以这个实现了run( )方法的类为参数创建系统类Thread的对象,就可以把用户实现的run( )方法继承过来。
其实Thread对象本身就实现了Runnable接口,但一般建议直接使用Runnable接口来写多线程程序,因为接口会比类带来更多的好处
例:通过实现Runnable接口创建线程
每个Java程序都有一个缺省的主线程,对于Application,主线程是main( )方法执行的线索。对于Applet,主线程指挥浏览器加载并执行Java小程序。要想实现多线程,必须在主线程中创建新的线程对象。Java语言使用Thread类及其子类的对象来表示线程。新建的线程在它的一个完整的生命周期中通常要经历新生、就绪、运行、阻塞和死亡等五种状态,这五种状态之间的转换关系和转换条件如图所示。
线程的生命周期
新建
等待
睡眠
运行
就绪
挂起
阻塞
死亡
start

java多线程机制 java编程 java编程方案策划 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数20
  • 收藏数0 收藏
  • 顶次数0
  • 上传人nnyoung
  • 文件大小557 KB
  • 时间2018-06-19
最近更新