详细介绍 进程、线程和协程的区别
详解 历程、线程和协程的区别 起首,给出“历程、线程和协程”的特点:
接下来,以一个形象的例子,进一步报告“历程、线程和协程”三者之间的区别: 假设有一个单核的操纵体系,体系上没有其余的措施必要运行,现有两个线程 A 和 B,A 和 B 在单独运行时都必要 10 秒来完本钱身的使命,并且使命都是运算操纵,线程 A 和 B 之间没有竞争和共享数据的题目。此刻让 A 和 B 两个线程并行,则操纵体系会不断的在 A 和 B 两个线程之间切换,到达一种伪并行的结果。 假如操纵体系切换的频率是每秒一次,切换的本钱是 0.1 秒(首要是栈切换),则总共必要 20 + 19 * 0.1 = 21.9 秒;假如行使协程的方法,可以先运行协程 A,A 竣事的时辰让位给协程 B,只产生一次切换,则总共必要 20 + 1 * 0.1 = 20.1 秒。假如操纵体系是双核的,并且线程是尺度线程,那么线程 A 和 B 可以到达真的并行,则总时刻为 10 秒;而协程的方法如故必要 20.1 秒的时刻。 感激阅读,但愿能 辅佐到各人,感谢各人对本站的支持! (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |