DEV小结-多线程(1)

进程与线程的概念。进程是操作系统进行资源分配和调度的一个独立单位;线程是CPU调度和分派作业的基本单位。一个程序至少要有一个进程,一个进程至少要有一个线程;而要给线程只属于一个进程。

同步和异步的概念。这里主要是指代码逻辑上的。同步是指按照代码逻辑顺序依次执行。只有在前一个逻辑过程完全结束才会进入下一个逻辑过程。在只有一个线程的程序都是使用同步方式。异步的前提是有至少两个处理单元,比如2个线程,2个进程等等。当代码执行到异步方式处理过程时,并不会等待这个逻辑过程完全结束,而是继续进入到下一个逻辑过程。采用异步的时候必须后一个逻辑过程不依赖前一个逻辑过程的处理结果。

并发的概念。这里也是只代码逻辑上的。并发就是并行计算,是指利用多个线程的方式,同时异步的运行一系列相同的逻辑。其主要目的是充分使用CPU资源而减少运行时间。在现如今多核CPU占主流的情况下特别有必要采用并发的方式来处理业务逻辑。

举个例子。话说在桃花岛,梅超风两口子偷走了黄老邪的九阴真经后,老人家觉得只有一套容灾性确实不好,于是打算整个三五十套的备用,于是把黄蓉,郭靖,老顽童都叫过来,让他们一人抄个十八本的。 郭靖是老实孩子,准备好笔墨开始一本一本的抄写。这就是同步处理,只有抄完上一本才会开始下一步。 老顽童是闲不住,怎么会愿意一天到晚的抄经文那?幸好这左右互搏也练了多年,于是老顽童一手一支笔,一次可以抄2本。着就是并发处理。 黄蓉绝顶聪明,自然不会亲自动手,于是飞鸽传书把武家兄弟,杨过,小龙女都叫过来。然后把经书一分为四,四个人每人负责抄1/4。完成一份交上来,当交上来的凑够4份黄蓉就装订成一本。显然杨过只有一只手,进度是最慢的,黄蓉就让小龙女帮杨过抄一些。这里黄蓉就是主线程,主要负责业务的分派和对四个人的工作成果进行处理。四个人是4个线程(也可以认为是4个进程,4台业务处理的服务器都可以),以异步的方式处理业务(抄写经文);四个人互相之间是并发的。当有人抄完一份1/4的经文会通知黄蓉(主线程)并上交抄完的经文(回调)。

posted @ 2014-03-05 20:35  悟道鹰  阅读(397)  评论(0编辑  收藏  举报