推荐阅读:http://www.iteye.com/topic/806990
一、起手式——基本概念
1.什么叫线程
进程:进行中的程序;作为资源分配的单位。
线程:轻量级的进程;程序里的顺序控制流,可以理解为程序里不同的执行路径;作为调度和执行的单位
多个线程可以共享内存,共享地址。相互间的通信十分迅速
线程体为run()方法(直接调用run()视为普通方法),启动线程为start()方法
这里方法run()称为线程体, 它包含了要执行的这个线程的内容, Run方法运行结束, 此线程终止, 而CPU再运行其它线程, 而如果直接用Run方法, 这只是调用一个方法而已, 程序中依然只有主线程--这一个线程, 其程序执行路径还是只有一条, 这样就没有达到写线程的目的。
真正的多线程是指有多个CPU,而我们自己用的电脑,实际上是模拟多线程,来多个线程之间来回切换,然而由于切换的时间非常之短,所以我们所看到的就好像同时进行多个线程一样。
2.如何创建线程
1.继承Thread类,重写run()方法
线程类:Rabbit(兔子)类与Tortoise(乌龟)类:
package com.jiangbei.thread; /** * 兔子类 * @author Administrator * @date 2017/8/30 **/ public class Rabbit extends Thread { @Override public void run() { //线程体 for (int i =0; i < 100; i++){ System.out.println("兔子跑了"+i+"步"); } } } /** * 乌龟类 */ class Tortoise extends Thread { @Override public void run() { //线程体 for (int i =0; i < 100; i++){ System.out.println("乌龟跑了"+i+"步"); } } }