宏观感受,从微观角度看,程序的运行是异步执行的。用一句话做总结:虽然操作系统是多线程的,但CPU每一时刻只能做一件事,和人的大脑是一样的,呵呵。
二、Java与多线程Java语言的多线程需要操作系统的支持。Java虚拟机允许应用程序并发地运行多个执行线程。Java语言提供了多线程编程的扩展点,并给出了功能强大的线程控制API。在Java中,多线程的实现有两种方式:扩展javala
gThread类实现javala
gRu
able接口
每个线程都有一个优先级,高优先级线程的执行优先于低优先级线程。每个线程都可以或不可以标记为一个守护程序。当某个线程中运行的代码创建一个新Thread对象时,该新线程的初始优先级被设定为创建线程的优先级,并且当且仅当创建线程是守护线程时,新线程才是守护程序。当Java虚拟机启动时,通常都会有单个非守护线程(它通常会调用某个指定类的mai
方法)。Java虚拟机会继续执行线程,直到下列任一情况出现时为止:调用了Ru
time类的exit方法,并且安全管理器允许退出操作发生。非守护线程的所有线程都已停止运行,无论是通过从对ru
方法的调用中返回,还是通过抛出一个传播到ru
方法之外的异常。
f三、扩展javala
gThread类FileNameTestMitiThreadjavaCreatedbyI
telliJIDEACopyrightCopyrightc20032006Compa
yLavasofturlhttplavasoftblog51ctocomurlAuthorleizhimi
Modifierleizhimi
DateTime2007517100312Readme通过扩展Thread类实现多线程publicclassTestMitiThreadpublicstaticvoidmai
Stri
gragsSystemoutpri
tl
Threadcurre
tThreadgetName