The present invention provides a method and a device for realizing the control logic interface tree atomic state machine, tree atomic state machine, the Phaser Accumulator algorithm was improved, the tree atomic state machine by splitting the access point to a certain extent can reduce the complexity of the modification, such as concurrent calls using the method does not need the exact state of atomic state machine in real time, only need to judge every backward transfer operation is successful, so no need to introduce Phaser Accumulator read complexity. By using the tree state machine, the concurrency limit of the local read and write for the atomic state machine entities can be controlled, and the complexity of the modification operation can be reduced, thereby improving the modification efficiency.
【技术实现步骤摘要】
树形原子状态机及其控制逻辑接口的实现方法及装置
本专利技术涉及并发程序设计方法,尤其涉及树形原子状态机、树形原子状态机控制逻辑接口的实现方法及装置。
技术介绍
控制原子状态机实体的局部读写的并发上限是当前并发程序设计中受到广泛关注的问题。在控制原子状态机实体的局部读写的并发上限上,PhaserAccumulator采用了分治的思想,将一个整数拆分成多个单元,从而增加了对整数增加的“带宽”,但对于读取的复杂度却增加了,因为读取操作需要遍历所有的单元。
技术实现思路
本专利技术的目的是提供树形原子状态机、树形原子状态机控制逻辑接口的实现方法及装置,旨在解决控制原子状态机实体的局部读写的并发上限的同时降低读取的复杂度的问题。本专利技术解决其技术问题所采用的技术方案是:一种树形原子状态机,每个树形原子状态机实体包括若干个节点实体,每个节点实体维护一个原子状态机实体和一个节点实体的引用;所述原子状态机实体存在n种状态可以一一映射到小于n的全部非负整数,n为正整数;所述节点实体的引用用于提供节点实体的寻址方式。在上述实施例的基础上,进一步地,所述节点实体的引用由编程语言确定。在上述实施例的基础上,进一步地,当编程语言为C++时,所述节点实体的引用是指针或引用;当编程语言为Java时,所述节点实体的引用是引用或特定标识符。在上述任意实施例的基础上,进一步地,每个节点实体维护的原子状态机实体存在MAX_N种状态可以一一映射到小于MAX_N的全部非负整数,MAX_N为正整数。在上述任意实施例的基础上,进一步地,当一个节点实体维护的节点实体的引用有效,且该节点实体无效时,对应该节 ...
【技术保护点】
一种树形原子状态机,其特征在于,每个树形原子状态机实体包括若干个节点实体,每个节点实体维护一个原子状态机实体和一个节点实体的引用;所述原子状态机实体存在n种状态可以一一映射到小于n的全部非负整数,n为正整数;所述节点实体的引用用于提供节点实体的寻址方式。
【技术特征摘要】
1.一种树形原子状态机,其特征在于,每个树形原子状态机实体包括若干个节点实体,每个节点实体维护一个原子状态机实体和一个节点实体的引用;所述原子状态机实体存在n种状态可以一一映射到小于n的全部非负整数,n为正整数;所述节点实体的引用用于提供节点实体的寻址方式。2.根据权利要求1所述的树形原子状态机,其特征在于,所述节点实体的引用由编程语言确定。3.根据权利要求2所述的树形原子状态机,其特征在于,当编程语言为C++时,所述节点实体的引用是指针或引用;当编程语言为Java时,所述节点实体的引用是引用或特定标识符。4.根据权利要求1所述的树形原子状态机,其特征在于,每个节点实体维护的原子状态机实体存在MAX_N种状态可以一一映射到小于MAX_N的全部非负整数,MAX_N为正整数。5.根据权利要求1所述的树形原子状态机,其特征在于,当一个节点实体维护的节点实体的引用有效,且该节点实体无效时,对应该节点实体的权值为1;所述树形原子状态机实体表示的状态到整数的映射值等于其全部节点表示的状态到整数的映射值之和。6.一种权利要求1-5中任一项树形原子状态机控制逻辑接口的实现方法,其特征在于,包括:语义需求文档获取步骤:接收用户对编程语言的选择指令,确定编程语言;查询与编程语言相应的语义需求文档,所述语义需求文档包括逻辑接口和与逻辑接口相应的语义需求;所述逻辑接口包括线性缓冲区逻辑接口、树形原子状态机初始化器逻辑接口、树形原子状态转移器逻辑接口中的一种或多种;代码获取步骤:获取数据结构;所述数据结构包括可堆叠线性缓冲区数据结构和树形原子状态机节点数据结构;获取树形原子状态机过程;所述树形原子状态机过程包括可堆叠线性缓冲区-取出过程、可堆叠线性缓冲区-加入过程、树形原子状态机-节点-初始化过程、树形原子状态机-初始化器-初始化过程、树形原子状态机-转移器-增加过程、树形原子状态机-转移器-条件减少过程;查询数据结构的代码;根据数据结构的代码,获取可堆叠线性缓冲区-取出过程的代码、可堆叠线性缓冲区-加入过程的代码、树形原子状态机-节点-初始化过程的代码、树形原子状态机-初始化器-初始化过程的代码、树形原子状态机-转移器-增加过程的代码、树形原子状态机-转移器-条件减少过程的代码;根据语义需求文档,利用可堆叠线性缓冲区-取出过程的代码、可堆叠线性缓冲区-加入过程的代码、树形原子状态机-节点-初始化过程的代码、树形原子状态机-初始化器-初始化过程的代码、树形原子状态机...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。