500多家长期合作企业1000多家企业人才定制培 养基地,定期双选会。
免费试听价值1980元课程,满意再报名。
“理论培训+真实项目实训”养成实战高手
企业定制化培养,学员至少3个真实项目实战,毕业1月就业率达99.2%,远超同行。
怎么学好 | 学什么好 | 咋学快速 |
---|
网络营销 | 以在线咨询为准 | 热招 |
HTML5定制班![]() |
以在线咨询为准 | 热招 |
Python定制班![]() |
以在线咨询为准 | 热招 |
软件测试就业班![]() |
以在线咨询为准 | 热招 |
JAVA就业班![]() |
以在线咨询为准 | 热招 |
UI设计定制班 | 以在线咨询为准 | 热招 |
全移动智能化教学设施
定义"高大上"
让你学习高薪技术专业轻松无忧快乐
Java开发教程之多线程基础开发
1.线程与并发
1.1.理解线程与进程的区别(了解)
进程:是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以有多个线程(1,n)。比如在Windows的任务管理器中,一个运行的xx.exe就是一个进程。
线程:是指进程中的一个执行任务(控制单元),一个进程中可以运行多个线程,多个线程可共享数据。
多进程:操作系统中同时运行的多个程序。
多线程:在同一个进程中同时运行的多个任务。
一个进程至少有一个线程,为了提高效率,可以在一个进程中开启多个控制单元,这就是多线程。
1.2.主线程main(了解)
在运行一个简单的Java程序的时候,就已经存在了两个线程,一个是主线程,一个是后台线程——维护的垃圾回收。主线程很特殊,在启动JVM的时候自动启动的。
1.3.线程的创建和启动(掌握)
方式一,继承Thread类:
自定义类继承Thread
覆写run方法
创建自定义类对象
自定义类对象调用start方法
方式二,实现Runnable接口
自定义类实现Runnable接口
覆写run方法
创建自定义类对象
把自定类的对象作为Thread类构造器参数,并调用Thread对象start方法
第一种使用起来方便,启动一个线程也方便,很多功能都在Thread类中定义好了;
第二种方式启动得依赖于Thread,因为本身Runnable中只有run方法,请看Thread的构造方法。
1.3.1.线程体-run方法(掌握)
不管哪种方式创建的线程,都得覆写run方法,因为这是线程体方法,该方法在线程启动之后会自动被调用。
public void run(){
//线程体,线程启动时,会自动调用本方法,所有这里是我们写代码的主体部分
}
线程的执行随机性:
一旦一个线程启动之后就是一个独立的线程,等待CPU的调度分配资源,不会因为启动它的外部线程结束而结束。
多次运行该程序,观察每次运行的结果。
1.3.2.线程的启动(掌握)
启动线程必须调用线程类Thread中的start方法,该方法应该由Thread类的一个实例来调用,下面是方法签名:
public void start()
底层会调用该线程的run方法。
只有调用了线程对象的start方法才会开启一个新的线程,如果是直接调用对象的run方法不会开启新的线程,只是一个单线程。
注意:启动一个新线程,不能使用run()方法,只能使用start方法。
以上就是IT培训网java编程培训机构的小编针对“Java开发教程之多线程基础开发”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
全国1000多家名企招聘
近500家企业人才定制培养需求
想不就业,太难!
课程免费咨询热线:13783581536