首页 > 代码库 > Java多线程总结

Java多线程总结

一. 进程是执行中的程序,程序是静态的(我们写完以后不运行就一直放在那里),进程是执行中的程序,是动态概念的。一个进程可以有多个线程。

二. 多线程包含两个或两个以上并发运行的部分,把程序中每个这样并发运行的部分称为线程。

  1. 基于进程的多任务处理是指:允许你的计算机同时运行两个或更多的程序。

  2. 基于线程的多任务处理是指:一个程序可以执行两个躲着更多的任务。

三. Java线程的实现方式:

  1. extends Thread 并重写run()方法。

  2. implements Runnable接口,把实现runnable接口的对象作为参数传递给new Thread(new Runnable(){public void run() {}});

  启动一个线程调用start()方法,不是run()方法!!!!!!start()方法首先为执行线程准备好系统资源,然后再去调用Runnable接口的run()方法。当某各类继承Thread或者实现Runnable接口后,该类就叫一个线程类。

四. 停止一个运行中的线程不要使用stop()方法,用一个变量去控制。

技术分享

 五. 线程的生命周期:

1. 创建状态:new一个线程类对象,系统不会它分配资源;

2. 可运行状态:调用start()方法系统分配资源,使得线程类对象具备运行条件,如果获取CPU时间片,则线程变成运行中状态(万事俱备,只欠时间片);

3. 不可运行状态:线程block或者时间片耗尽;block完成后重新变成可运行状态,时间片耗尽后重新变成可运行状态,等待再次分配时间片;

4. 消亡状态:线程结束;

技术分享

 

Java多线程总结