FROM
http://blog.csdn.net/zhxue123/archive/2009/02/03/3859471.aspx
不同线程间进行通信通常有两种简单方法:
方法一 通过访问共享变量的方式(注:需要处理同步问题)
方法二 通过管道流
......
http://blog.csdn.net/cesium/archive/2008/05/18/2455871.aspx
线程Thread方法:
run():线程的执行逻辑
start():启动线程
yield():暂定线程的执行,允许其它线程竞争CPU,常用于具有同等优先级的线程之间的竞争,适用于不支持时间分片的操作系统之间的线程处理。
sleep(long millis):线程休眠,暂停执行,但是不交出临界区的锁(对象锁)可以使低优先级的Java线程得到执行的机会,也可以让同优先级、高优先级的线程有执行的机会.
stop():kill一个线程,但是通常通过线程内的循环条件来结束一个线程。//不用了
setPriority(int weight):设置线程的优先级(1->10),值越高,优先级越高,一般是5,且子线程与母线程具有同等的优先级和线程属性(是否为前后台线程)。
setDaemon(true):在start()方法前执行,将该线程设置为后台线程,后台线程在所有前台线程执行完后亦自行终止。
isAlive():判断此线程是否处于处于活动状态,如果在start()后,线程终止前,该方法返回true。
----------------------------------------------------------------------------------------------------------------------
object类的线程操作方法:
wait():将本线程放入wait池,放弃临界区的锁,直到其它拥有锁的线程使用notify()或者notifyAll()方法将该线程放入阻塞池(lock池)。
notify(),notifyAll():将位于wait()池中的线程放入阻塞池,等待获得临界区的锁。