更新时间:2022年03月21日14时23分 来源:传智教育 浏览次数:
在日常生活中,很多事情都是可以同时进行的。例如一个人可以一边听音乐,一边打扫房间;可以一边吃饭,一边看电视。在使用计算机时,很多任务也是可以同时进行的。例如,可以一边浏览网页,一边打印文档,还可以一边聊天,一边复制文件。
计算机能够同时完成多项任务,例如,让浏览器执行0.001秒,让QQ执行0.001秒,这就是多线程技术。计算机中的中央处理器(Central Processing Unit,CPU)即使是单核也可以同时运行多个任务,因为操作系统执行多个任务时就是让CPU对多个任务轮流交替执行。Java是支持多线程的语言之一,它对多线程编程提供了内置的支持,可以使程序同时执行多个执行片段。
每个运行的程序都是一个进程,在一个进程中还可以有多个执行单元同时运行,这些执行单元可以看作程序执行的一条条线索,称为线程。操作系统中的每一个进程中都至少存在一个线程。例如,当一个Java程序启动时,就会产生一个进程,在该进程中会默认创建一个线程,在这个线程上会运行main()方法中的代码。
代码都是按照调用顺序依次往下执行的,没有出现两段程序代码交替运行的效果,这样的程序称为单线程程序。如果希望程序中实现多段程序代码交替运行的效果,则需要创建多个线程,即多线程程序。多线程,是指一个进程在执行过程中可以产生多个单线程,这些单线程程序在运行时是相互独立的,它们可以并发执行。多线程程序的执行过程如图8-2所示。
图8-2 多线程程序的执行过程