1 / 51
文档名称:

天津科技大学Java第十章 线程.pptx

格式:pptx   大小:138KB   页数:51页
下载后只包含 1 个 PPTX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

天津科技大学Java第十章 线程.pptx

上传人:cby201601 2019/5/24 文件大小:138 KB

下载得到文件列表

天津科技大学Java第十章 线程.pptx

相关文档

文档介绍

文档介绍:,线程被引入。多线程在提高系统效率等方面有显著作用。在单处理器的计算机上,多个线程实际上并不能并发执行。系统可以按照某种调度策略,在线程间切换。线程间的切换由系统在极短的时间内完成。所以给人的印象是并发执行。,一个用户程序不能直接访问这些数据。线程是一个用户级的实体,线程结构驻留在用户空间中。能够被普通的用户级方法直接访问。、数据、内核状态和一组寄存器组成线程由表示程序运行状态的寄存器以及堆栈组成。一个进程可以分成几个线程来执行。进程作为系统资源分配的基本单位线程作为操作系统调度的基本单位。同一个进程的多个线程之间可以共享资源。、进程和线程的关系程序是一段静态的代码,它是应用程序执行的蓝本;进程是程序的一次动态执行过程,它对应了从代码加载、执行到执行完毕的一个完整过程。这个过程也是进程本身从产生、发展到消亡的过程。作为执行蓝本的同一段程序,可以被多次加载到系统的不同内存区域执行,形成不同的进程。线程是比进程更小的单位。一个进程在其执行过程中,可以产生多个线程,形成多个执行流。每个执行流即每个线程也有它自身的产生、存在和消亡的过程,也是个动态概念。,但一个线程本身并不是一个程序,它必须运行于一个进程之中。线程可以定义为一个程序中的单个执行流,多线程是指同时存在几个执行流,按几条不同的执行线索共同工作,通过并发合作完成某项任务。Java在语言级支持多线程,提供了很多线程操作需要的类和方法,极大地方便了程序员。而无须使用外部的线程支持库。,线程模型就是一个虚拟CPU、程序代码和数据的封装体。代码与数据相互独立。一个虚拟的CPU该CPU执行的代码当两个线程执行同一个类的实例代码时,它们共享相同的代码。代码所操作的数据当两个线程对同一个对象进行访问时,它们将共享数据。每个Java程序都有一个缺省的主线程。Java应用程序总是从主类的main方法开始执行。发现main方法之后,就会启动主线程,负责执行main方法。在main方法的执行中再创建的线程,就称为程序中的其它线程。如果main方法中没有创建其他的线程,那么当main方法执行完最后一个语句,即main方法返回时,JVM就会结束我们的Java应用程序。如果main方法中又创建了其他线程,那么JVM就要在主线程和其他线程之间轮流切换,保证每个线程都有机会使用CPU资源,main方法即使执行完最后的语句,JVM也不会结束我们的程序,JVM一直要等到程序中的所有线程都结束之后,才结束我们的Java应用程序。{publicstaticvoidmain(Stringargs[]){Lefthandleft;Righthandright;left=newLefthand();//创建线程right=newRighthand();();();for(inti=1;i<=6;i++){("我是主线程");}}}classLefthandextendsThread{publicvoidrun(){for(inti=1;i<=10;i++){("我是左手线程");}}}classRighthandextendsThread{publicvoidrun(){for(inti=1;i<=9;i++){("我是右手线程");}}}