Java程序设计基础ppt课件.pptVIP

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java程序设计基础ppt课件

Java程序设计基础 Contents 多线程编程技术 通过本章的学习了解多线程的基本概念以及作用,掌握在Java语言中实现多线程的基本原理和方法,从而达到能够编写具有多线程功能程序的目的。通过技能训练,掌握Java语言中实现多线程的基本技术和多线程的运行机制。 10.1 概 述 随着计算机技术的发展,编程模型也越来越复杂多样化。但多线程编程模型是目前计算机系统架构的最终模型。随着CPU主频的不断攀升,X86架构的硬件已经成为瓶颈,在这种架构的CPU主频最高为4G。事实上目前3.6G主频的CPU已经接近了顶峰。 如果不能从根本上更新当前CPU的架构(在很长一段时间内还不太可能),那么继续提高CPU性能的方法就是超线程CPU模式。那么,作业系统、应用程序要发挥CPU的最大性能,就是要改变到以多线程编程模型为主的并行处理系统和并发式应用程序。 多线程编程的目的,就是“最大限度地利用CPU资源”,当某一个线程的处理不需要占用CPU而只与输入、输出等资源打交道时,让需要占用CPU资源的其他线程有机会获得CPU资源。 多线程机制是Java语言的又一重要特征,使用多线程技术可以使系统同时运行多个执行体,这样可以加快程序的响应时间,提高计算机资源的利用率。使用多线程技术可以提高整个应用系统的性能。 线程需要占用内存,也需要CPU时间跟踪线程。当线程间有共享资源时,要注意解决竞争用共享资源的问题,防止死锁的情况发生。 Java语言的线程是通过java.lang.Thread类来实现的,在该类中封装了虚拟的CPU。 10.1.1 程序、进程与线程 程序:是一组计算机指令的集合。 进程:是程序的一次动态执行过程,它对应了从代码加载、执行到执行完毕的一个完整过程,这个过程也是进程本身从产生、发展到消亡的过程。 线程:是进程的一个单一的连续控制流。一个进程可以有多个线程。 多线程:是指一个进程在执行过程中可以产生多个线程,这些线程可以同时存在、同时运行,形成多条执行线索。多线程是实现并发机制的一种有效手段。 由于CPU分时机制的作用,使每个线程都能循环获得自己的CPU时间片。由于CPU执行速度非常快,使得所有线程好象是在“同时”运行一样。 线程和进程的主要差别体现在如下两个方面: (1)同样作为基本的执行单元,线程的划分比进程小。 (2)每个进程都有一段专用的内存区域。与此相反,线程却共享内存单元(包括代码和数据),通过共享的内存单元来实现数据交换、实时通信与必要的同步操作。 多进程:在操作系统中,能同时运行多个任务程序。 多线程:在同一应用程序中,有多个顺序流同时执行。 10.1.2线程的概念模型 Java内在支持多线程,它的所有类都是在多线程下定义的,Java利用多线程使整个系统成为异步系统。Java中的线程由三部分组成,如图所示。 线程的三个部分 1. 虚拟的CPU,封装在java.lang.Thread类中。 2. CPU所执行的代码,传递给Thread类。 3. CPU所处理的数据,传递给Thread类。 线程的3个部分 代码可以由多个线程共享,与数据是相对独立的。两个线程如果执行同一个类的实例代码,则它们可以共享相同的代码。 类似的,数据可以由多个线程共享,与代码是相对独立的。两个线程如果共享对一个公共对象的存取,则它们可以共享相同的数据。 在Java编程中,虚拟处理机封装在Thread类的一个实例中。构造线程时,定义其上、下文的代码和数据是由传递给它的构造函数的对象指定的。 10.1.3实现线程的类 1. Thread类 Thread类代表Java程序中单个的运行线程,它综合了Java程序中一个线程需要拥有的属性和方法。 (1)构造方法 public Thread() 功能:创建一个系统线程类的对象。 public Thread(Runnable target) 参数说明:target是Runnable系统接口的实例对象。 功能:创建一个系统线程类的对象,该线程可以调用指定Runnable接口对象的run()方法。 public Thread(ThreadGroup group,String name) 参数说明:group是ThreadGroup(线程组)的实例对象,name是新线程名字,可以用null作线程名。 功能:创建一个指定名字的系统线程类的对象,并将该线程加入到指定的线程组中。 public Thread(String name) 功能:创建一个指定名字的系统线程类的对象。 public Thread(ThreadGroup group,Runnable target) 功能:创建一个系统线程类的对象,并将该线程加入到指定的线程组中,同时该线程可以调用指定Runnable接口对象的run(

文档评论(0)

118zhuanqian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档