首页 > 代码库 > 多线程

多线程

一、进程

 

1、进程是系统运行程序基本单位

2、每一个进程都有自己独立的一块空间、一组系统资源

3、每一个进程的内部数据和状态都是完全独立的。

 

 

 

二、多线程的好处

 

1、充分利用CPU的资源

2、简化编程模型

3、带来良好的用户体验

 

 

 

三、主线程

 

1、它是产子其他子线程的线程

2、通常它必须最后完成执行,因为它执行各种关闭动作。

 

 

 

 

四、继承Thread类创建线程

 

1、定义MyThread类继承Thread

2、重写run()方法, 在run()方法中实现数据输出

3、创建线程对象,调用start()方法启动线程

 

 

五、实现Runnable接口创建线程

 

1、定义MyRunnable类实现Runnable类实现Runnable接口,并实现Runnable接口的run()方法,实现输出数据。

 

2、创建MyRunnable类的对象myRunnable

 

3、创建一个Thread类的对象myThread,myRunnable对象作为Thread=类构造方法的参数传入

 

4、调用myThread对象的start()方法启动线程。

 

 

 

 

六、线程的状态

 

1、创建状态

2、就绪状态

3、运行状态

4、阻塞状态

5、死亡状态

 

 

 

 

七、线程优先级

 

1、当同一时刻有一个或多个线程处于运行状态时,它们需要排队等待CPU资源,每个线程会自动获得一个线程的优先级(Priority),优先级的高低反映线程的重要或紧急程度。

 

 

 

 

 

八、线程的调度

 

 

1、线程的休眠: sleep()方法会让当前线程休眠(停止执行) millis 毫秒, 线程由运行的状态进入不可运行状态,睡眠时间后线程会再次进入可运行状态。

 

 

2、线程的强制运行: join()方法使当前线层暂停执行,等待调用该方法的线程结束后再继续执行本线程。

 

 

3、线程的礼让 yield()方法可暂停当前线程执行,允许其他具有相同优先级的线程获得运行机会,该线程仍处于就绪状态,不转为阻塞状态。

 

 

 

 

 

 

九、线程同步

 

 

1、当多个线程对象操纵同一共享资源时,要使用synchronized关键字来进行资源的同步处理,可以使用同步方法和同步代码来实现线程同步。

 

 

 

 

多线程