当我们在运行一个应用程序的时候,程序进入内存后就成了一个进程,因此程序至少有一个进程。但是为了提高程序的运行速度,往往需要同时处理不同的任务,这时候我们就需要多个线程来完成。本文将介绍Java线程的基本概念和使用方法,以及Java中线程和进程的区别。
一、基本概念
1、什么是线程?
线程 thread
是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一个进程中可以并发不同的线程,每条线程可以并行执行不同的任务。
2、并发与并行
并发:指两个或多个事件在同一时刻发生(同时发生)。
并行:指两个或多个实践在同一个时间段内发生。
3、线程和进程的区别。
进程:是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建、运行到消亡的过程。
线程:进程内部的一个独立执行单元;一个进行可以同时并发的运行多个线程。简单的理解,进程相当于一个单 CPU 操作系统,而线程是这个系统中运行的多个任务。
二、线程的使用
(1)定义子类继承 Thread
类
(2)子类中重写 Thread
类中的 run
方法
(3)创建 Thread
子类对象,也就是创建了线程对象
(4)调用线程对象 start
方法,启动线程,调用 run
方法
class MyThread extends Thread{
public MyThread(){
super();
}
public void run(){
for(int i = o;i<100;i++){
System.out.print1n("子线程: "+i);
}
}
}
public class TestThread {
public static void main(String[] args) {
//1.创建线程
MyThread mt = new MyThread();
//2.启动线程,并调用当前线程的run()方法。
mt.start();
}
}
三、线程定义方法
四、线程的同步
Java对于多线程的安全问题提供了专业的解决方法:同步机制
五、总结
通过本文的学习,关于 Java 线程的基本概念和使用方法,以及线程和进程的有了一个大概的了解。如果想要对线程、进程等进一步了解,请关注 w3cschool 或 编程狮APP。