1 / 25
文档名称:

Java语言10_多线程.ppt

格式:ppt   页数:25
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

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

分享

预览

Java语言10_多线程.ppt

上传人:所以所以 2013/5/21 文件大小:0 KB

下载得到文件列表

Java语言10_多线程.ppt

文档介绍

文档介绍:Java语言程序设计
资源与环境科学学院
第十章多线程
进程和线程
—在多任务系统中,每个独立执行的程序称为进程。操作系统一般都是多任务的,即能够同时执行多个应用程序。操作系统负责对CPU等设备的资源进行分配和管理,虽然这些设备某一时刻只能做一件事,但以非常小的时间间隔交替执行多个程序,就可以给人以同时执行多个程序的感觉。
—一个进程中又可以包含一个或多个线程,一个线程就是一个程序内部的一条执行线索,是被系统独立调度和分派的基本单位。如果在一程序中实现多段代码同时交替运行,就需产生多个线程,并指定每个线程上所要运行的程序代码段,这就是多线程。
单线程与多线程
()
()
()
()
单线程
多线程
单线程示例
public class ThreadDemo1
{ public static void main(String args[])
{ new TestThread().run();
while(true){
("main() function: "+().getName());
}
}}
class TestThread
{ public void run()
{ while(true){
("run() function: "+().getName());}
}}
多线程示例
public class ThreadDemo1
{ public static void main(String args[])
{ new TestThread().start(); //创建一个线程对象,start()启动一个线程
while(true){
("main() function: "+().getName());
}
}}
class TestThread extends Thread
{ public void run()
{ while(true){
("run() function: "+().getName());}
}}
用Thread类创建线程
—要将一段代码在一个新的线程上运行,该代码应该在一个类的run()函数中,并且run()函数所在的类是Thread类的子类。即,我们要实现多线程,必须编写一个继承了Thread类的子类,子类要覆盖Thread类中的run()函数,在子类的run()中调用想在新线程上运行的程序代码。
—启动一个新的线程,不是直接调用Thread子类对象的run方法,而是调用Thread子类对象的start()方法。Thread类对象的start()方法产生一个新线程,并执行在该线程上run()方法。
—由于线程的代码段在run()中,那么该方法执行完成以后线程也就相应的结束了,因而我们可以通过控制run方法中循环条件来控制线程的结束。
多线程注意问题
—使用多线程不会增加 CPU 的能力。但是如果使用 JVM 的本地线程实现,则不同的线程可以在不同的处理器上同时运行(在多 CPU 的机器中),从而使多 CPU 机器得到充分利用。
—当应用程序必须等待缓慢的资源(如网络连接或数据库连接)时,或者当应用程序是非交互式的时,多线程通常是有利的。
—基于  的软件有必要是多线程的,否则用户将感觉应用程序反映迟钝。当开发要支持大量客户机的服务器时,多线程可以使编程较为容易。每个线程可为不同的客户或客户组服务,从而缩短了响应时间。
后台线程
—如果对某个线程对象在启动(调用start方法)之前调用了setDaemon(true)方法,这个线程就变成了后台线程
—对java程序来说,一个进程中只要还有一个前台线程在运行,这个进程就不会结束。如果进程中只有后台线程运行,这个进程就会结束。
后台线程示例
public class ThreadDemo3
{ public static void main(String args[])
{ Thread tt = new TestThread3();

();
}
}}
class TestThread3 extends Thread
{ public void run()
{ while(true){

最近更新

2026山西大同市平城区选聘廉洁征兵监督员考试.. 47页

2026年C语言专升本真题(a卷) 13页

2026年c语言期末测试题完整答案 13页

2026年c语言知识试题(易错题) 13页

2026年c语言编程练习题(基础题) 13页

2026年C语言试题题库(综合题) 13页

2024年山西师范大学现代文理学院辅导员招聘备.. 30页

2024年无锡商业职业技术学院马克思主义基本原.. 21页

2024年沈阳科技学院辅导员招聘备考题库附答案.. 36页

2026年党员廉政从业知识测试题及一套答案 14页

2025北京小汤山医院招聘1人参考试题(第四批).. 34页

2025国家电投集团中国电能选聘6人备考题库必考.. 49页

2025年伊川县招教考试备考题库及答案解析(夺.. 30页

2026年哈尔滨传媒职业学院单招职业技能考试模.. 45页

2025年河南测绘职业学院单招职业适应性考试题.. 44页

2025年湖南交通职业技术学院马克思主义基本原.. 13页

2025年西安培华学院马克思主义基本原理概论期.. 13页

2025广西壮族自治区工业和信息化厅直属部分科.. 47页

2025河北廊坊大厂回族自治县殡仪馆招聘2人参考.. 49页

2026年山东劳动职业技术学院单招职业倾向性考.. 45页

2026年幼教笔试题库附答案(预热题) 41页

2026年安徽城市管理职业学院单招职业适应性考.. 37页

2025年湖南省建设工程工程量清单计价办法(新).. 51页

2025年江西信息应用职业技术学院单招职业适应.. 127页

2025年江西信息应用职业技术学院单招职业倾向.. 73页

喝酒给老婆的检讨书 6页

vae乳液低温发泡工艺 29页

隧道工程课后习题答案-中南大学-彭立敏 6页

《口蹄疫》ppt课件 42页

DL T 5783-2019《水电水利地下工程地质超前预.. 36页