Java多线程

http://www.blogjava.net/mikechen/archive/2012/02/21/370416.html

1.    多线程概念:

       线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比如java.exe进程中可以运行很多线程。线程总是属于某个进程,进程中的多个线程共享进程的内存。

  •     多线程的实现方式和启动
  •     多线程是依靠什么方式解决资源竞争
  •     多线程的各种状态以及优先级
  •     多线程的暂停方式

2.    多线程详解        1)多线程的实现方式和启动:

  •       继承Thread和是实现Runnable接口,重写run方法
  •       启动只有一种方式:通过start方法,虚拟机会调用run方法

       2) 多线程依靠什么解决资源竞争

  •        锁机制:分为对象锁和类锁,在多个线程调用的情况,每个对象锁都是唯一的,只有获取了锁才能调用synchronized方法
  •        synchronize同步:分为同步方法和同步方法块
  •        什么时候获取锁:每次调用到synchronize方法,这个时候去获取锁资源,如果线程获取到锁则别的线程只有等到同步方法介绍后,释放锁后,别的线程       才能继续使用

       3)线程的几种状态

  •        主要分为:新状态(还没有调用start方法),可执行状态(调用start方法),阻塞状态,死亡状态

       默认优先级为normal(5),优先级数值在1-10之间 4) 多线程的暂停方式

  •     sleep:睡眠单位为毫秒
  •     wait,waitAll,notify,notifyAll,wait等待,只有通过wait或者waitAll唤醒
  •     yield:cpu暂时停用
  •     join
posted @ 2012-08-05 14:14  高级园长  阅读(152)  评论(0编辑  收藏  举报