04 线程.pdf

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 线程 线程是什么?线程有什么作用?线程具备提高执行速度的特点,在应用程序中使用非常 广泛,例如现实生活中的网络聊天功能。本章将讲述线程的基本概念,学习如何使用线程进 行程序代码的编写。 4.1 线程的概念 在讲述线程的概念之前,会先介绍什么是进程。这两个概念仅仅只有一字之差,但代表 的是两个完全不同的概念。线程也是网络编程必须具备的知识点。 4.1.1 进程及其使用环境 在讲进程之前,先介绍什么是程序。程序是计算机指令的集合,它以文件形式存储在磁 盘上,而进程就是一个执行中的程序,而每一个进程都有其独立的内存空间和系统资源。 进程就是一个运行的程序,Windows 操作系统是支持多进程的操作系统,即同一时间 可以执行多个程序,每个程序是在自己独立的内存空间内,使用自己被分配到的系统资源。 其实,这种说法并不准确,一个 CPU 在某个时刻,实际上只能运行一个程序,即一个进程。 所谓的支持多进程,其实就是 CPU 在交替轮流执行多个程序,例如,利用 Windows 操作系 统可以一边听歌曲、一边上网等等。 4.1.2 线程及其使用环境 线程是运行程序(进程)中单个顺序的小程序,一个进程可以由多个线程组成,而这多 个线程共享同一个存储空间,这使得线程间的通信比较容易。在一个多进程的程序中,如果 要切换到另一个进程,需要改变地址空间的位置。然而在多线程的程序中,就不会出现这种 情况,因为他们位于同一个内存空间内,只需改变运行的顺序即可。 多线程指单个程序可通过同时运行多个不同线程,以执行不同任务。所谓同时,也要依 据 CPU 。如果是多个CPU,则并发运行,如是一个 CPU,则根据系统具体情况,执行多个 线程。 通过本节的介绍,读者对线程和进程有了简单的认识,下面的章节将通过理论与实例结 合的方法,讲述如何在程序中,利用线程的优点来编写程序代码。 184 4.2 线程创建 在 Java 程序语言中,可通过系统提供的编程接口去创建线程,创建线程的方法有两种: 一种是通过实现 Runnable 接口的方式来创建线程,另一种是通过继承 Thread 类来创建线程。 4.2.1 如何创建线程 创建线程的方法一般有两种: 一种是通过实现 Runnable 接口的方式创建线程。 一种是通过从 Thread 类中去继承来创建线程。 1.通过Runnable 接口的方式创建线程 在 Java 中,线程是一种对象,但不是所有的对象都可以称为线程,只有实现了 Runnable 接口的类,才可以称为线程。下面先看看 Runnable 接口的定义。 Public interface Runnable { public abstract void run(); } Runnable 接口只有一个抽象方法“run() ”,要实现这个接口,只要实现这个抽象方法 就可以。只要实现了这个接口的类,才有资格称为线程。创建线程的结构: Thread t=new Thread(runnable 对象); Runnable 对象是指实现了 Runnable 接口类的对象。当线程执行时,Runnable 对象中的 “run() ”方法会被调用,如果想要运行上面创建的线程,还需要调用一个Thread 类的方法。 t.start(); 下面举个有关创建线程的实例。 ///创建两个线程,让其交替运行 public class threadtest { public static void main(String[] args) { compute c=new compute(); compute1 c1=new compute1(); Thread t=new Thread(c);

文档评论(0)

dllkxy + 关注
实名认证
内容提供者

本文库主要涉及建筑、教育等资料,有问题可以联系解决哦

版权声明书
用户编号:5213302032000001

1亿VIP精品文档

相关文档