你可能对多任务并不陌生:操作系统似乎有能力同时运行多个任务。比如,你可以边听歌边编辑代码。现在,多数计算机已不再只有一个CPU,并行运行的程序数量不再受到CPU数量的限制。操作系统将不同的CPU时间片分配给不同的程序,让他们并行运行。
多线程程序将并行的概念运用到程序本身,单个程序将在同一时间运行多个任务。每个任务通常叫做一个线程。可以同时运行多个线程的程序称为多线程程序。
所以,多进程和多线程的区别是什么?最重要的区别是,进程拥有独立的一整套变量,线程共享数据。这听起来很不安全,事实上也是的。但是,共享内存使得线程之间的通信比进程之间的通信更高效和简单。在某些操作系统上,线程可以被当做轻量级的进程,因为在线程之间调度的开销比进程之间调度的开销小。
多线程非常有用。比如,浏览器应该具备同时下载多个文件的功能,服务器应该可以同时服务多个客户端,GUI应该和逻辑处理分开。这一章将简要介绍Java应用中的多线程。需要注意的是,多线程可能非常复杂,在这一章,我们只介绍一些多线程的基本用法,但是更多用法你需要查阅其他书籍。
Java多线程(一)——简介
最新推荐文章于 2024-08-18 21:36:31 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)