1、 计算机程序在实现多任务处理有两种方式:基于多进程和基于多线程。、
2、 一个程序运行起来就是一个进程。它的特点:每一个进程都有其独立的内存地址空间。
3、 线程是包含在进程当中的。线程是进程内部单一的一个顺序控制流。它最大的特点是:共享内存地址空间。
4、线程的优点:
1)基于线程所需的开销更少;
2)进程间调用涉及的开销比线程间通信多;
3)线程间的切换成本比进程间切换快。
5、 创建线程类的两种方法:
1)实现Thread类:继承一个Thread类的子类,并覆run()方法;
2)实现Runnable接口:必须要有一个Thread对象。
6、通过调用start()方法来启动线程。
7、线程的状态:
1)新建;
2)就绪;
3)运行;
4)中断;
5)死亡。
8、中断状态包括:
1)睡眠;调用sleep()方法,醒来后参与竞争CPU。
2)挂起;调用yield()方法,线程显示出让CPU控制权。
3)等待;调用wait()方法,使线程等待,它需要唤醒。
4)阻塞;等待IO事件的输入。如Scanner。
9、在Java程序启动时,立即执行主线程。主线程最后死亡。
10、优先级分别为1-10,默认优先为5;级别越高抢到CPU的机率越大。设置优先级用setPriority()方法。