什么是多线程:
多线程(multithreading),是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。具有这种能力的系统包括对称多处理机、多核心处理器以及芯片级多处理或同时多线程处理器。在一个程序中,这些独立运行的程序片段叫作“线程”(Thread),利用它编程的概念就叫作“多线程处理” 。
原理
实现多线程是采用一种并发执行机制
并发:指两个或多个事件在同一时间段内发生。(举例:唐三藏,猪八戒,沙悟净被困火海,孙悟空分身术限号,只能一个一个救,在极短的时间救出八戒三人)
多线程的实现步骤(Thread类)
1.定义类继承Thread类 2.重写run方法,run方法中的代码就会按照多线程机制进行调用和执行 3.在mian方法中定义类的对象,调用start()方法启动线程,会自动调用run方法
代码:
public class Mythread1 extends Thread{
@Override
public void run(){
for (int i=0;i<100;i++){
System.out.println("执行听歌"+i);
}
}
}
public class Mythread2 extends Thread{
@Override
public void start(){
for (int j=0;j<100;j++){
System.out.println("执行游戏"+j);
}
}
}
public class Threadtext1 {
public static void main(String[] args) {
Mythread1 t1=new Mythread1();
Mythread2 t2=new Mythread2();
t1.start();
t2.start();
}
}
Runnable接口实现类实现多线程的步骤(Runnable接口)
1.定义实现Runnable接口
2.重写run方法
3.在mian方法中实例化Runnable接口的实现类对象
4.定义两个线程Thread类的对象,把Runnable接口的实现对象传入构造方法中
5.线程类对象调用start方法,启动线程,自动执行Runnable接口的实现类中的run方法
代码:
public class MyRunnable1 implements Runnable{
@Override
public void run() {
for (int i=0;i<100;i++){
System.out.println("执行听歌"+i);
}
}
}
public class MyRunnable2 implements Runnable {
@Override
public void run() {
for (int j=0;j<100;j++){
System.out.println("执行游戏"+j);
}
}
}
public class Threadtext2 {
/**
* Runnable接口实现类实现多线程的步骤:
* 1.定义类实现Rdhnable接口:
* 2.重写run方法;
* 3.在main方法中实例化Runnable接口的实现类对象;
* 4.定义两个线程Thread类的对象,把Runnable接口的实现对象传入构造方法中;
* 10 5.线程类对象调用start方法,启动线程,自动执行Runnable接口的实现类中的run方法;
*/
public static void main(String[] args) {
MyRunnable1 r1=new MyRunnable1();
MyRunnable2 r2=new MyRunnable2();
//Runnable接口的实现实现多线程,必须借助Thread类才能实现
Thread t1=new Thread(r1);
Thread t2=new Thread(r2);
t1.start();
t2.start();
}
}