高机能处事器架构想路「不只是思绪」
早年我们的代码,从上往下执行,每一行城市占用必然的CPU时刻,这些代码的直接次序,也是和编写的次序根基同等,任何一行代码,都是独一时候的执利用命。当我们在编写漫衍式措施的时辰,我们的代码将不再仿佛那些单历程、单线程的措施一样简朴。我们要把同时运行的差异代码,在统一段代码中编写。就仿佛我们要把整个交响乐团的每个乐器的曲谱,所有写到一张纸上。为了办理这种编程的伟大度,业界成长出了多种编码情势。 在多历程的编码模子上,fork()函数可以说一个很是典范的代表。在一段代码中,fork()挪用之后的部门,也许会被新的历程中执行。要区分当前代码的地址历程,要靠fork()的返回值变量。这种做法,便是把多个历程的代码都归并到一块,然后通过某些变量作为符号来分别。这样的写法,对付差异历程代码大部份沟通的“同质历程”来说,照旧较量利便的,最怕就是有大量的差异逻辑要用差异的历程来处理赏罚,这种环境下,我们就只能本身通过类型fork()四面的代码,来节制紊乱的排场。较量典范的是把fork()四面的代码弄成一个相同分发器(dispatcher)的情势,把差异成果的代码放到差异的函数中,以fork之前的标志变量来抉择怎样挪用。 ![]() 动态多历程的代码模式 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |