进程是独立的
一个线程必须有一个父线程
在多任务操作系统中(即能同时执行多个应用程序),可以查看当前系统中所有的进程
线程
在多任务操作系统中,每个运行程序都是一个进程,用来执行不同任务的,而在一个进程中还可以有多个执行单元同时运行,来同时完成一个或多个程序任务,这些执行单元可以看做程序执行的一条条线索。
多线程程序在运行时,每个线程之间都是独立的,他们可以并发执行。
单线程就是一条顺序执行线索,而多线程则是并发执行的多条线索,而多线程则是并发执行的多条线索,这样可以充分利用cpu资源,进一步提升执行效率。
不要直接在程序中的调用线程润run()方法
线程的创建 具有Thread类创建 和Runable接口创建
Thread类实现多线程
例如:package O;
class MyThread1 extends Thread{
public MyThread1(String name){
super (name);
}
public void run(){
int i=0;
while(i++<5){
System.out.println(Thread.currentThread().getName()+"的run()方法正在运行");
}
}
}
public class Example {
public static void main(String[] args) {
MyThread1 thread1=new MyThread1(" thread1");
thread1.start();
MyThread1 thread2=new MyThread1(" thread2");
thread2.start();
}
}Runnable接口实现多线程
例如: class MyThread2 implements Runnable{
public void run(){
int i=0;
while(i++<5){
System.out.println(Thread.currentThread().getName()+“的run()方法正在运行”);
}
}
}
public class Example2 {
public static void main(String[] args) {
MyThread2 mythread2=new MyThread2();
Thread thread1=new Thread(mythread2,“thread1”);
thread1.start();
Thread thread2=new Thread(mythread2,"thread2");
thread2.start();
}
}
Runnable接口中只有一个抽象的run()方法,那么接口属于jdk8中定义的函数接口,可以直接通过Lambda表达式的方式更简洁的实现线程。