……进程不是唯一答案

你已经学会了怎样让计算机同时做几件事:用进程。你在上一章中建立了一个网络服务器,它可以同时与几个不同客户端打交道。每当一个新用户连接时,服务器都会新建一个进程来处理新的会话。

难道每当想要同时做几件事时都得创建进程吗?不见得,有以下几个原因。

创建进程要花时间

有的机器新建进程只要花一丁点时间。虽然时间很短,但还是需要时间。如果你想要执行的任务才用几十毫秒,每次都创建进程就很低效。

共享数据不方便

当创建子进程时,子进程会自动包含父进程所有数据的副本。但这些只是副本,如果子进程想把数据发回父进程,就需要借助管道之类的东西。

进程真的很难

创建进程需要写很多代码,这会让代码又乱又长。

需要一个既可以快速启动任务,又可以共享现有数据,而且不需要写很多代码的东西。

你需要线程。