线程(Threads)

有时你的程序可能需要一次执行多个操作。例如,你可能想要执行一些磁盘操作(IO)并同时向用户显示一些反馈。或者你可能希望在后台复制或上传某些文件时,同时仍允许用户继续执行“前台”中的其它任务。

在 Ruby 中,如果你希望一次执行多个任务,则可以在自己的“线程”(thread)中运行每个任务。线程就像程序中的程序。它独立于任何其它线程运行一些特定的代码。

但是,正如我们稍后将看到的,多个线程可能需要找到相互协作的方法,例如,它们可以共享相同的数据,并且不会占用自己可用的所有处理时间,从而阻止其它线程运行。