CN114253714B - 一种基于阻塞队列的多线程数据处理的方法、系统及设备 - Google Patents
一种基于阻塞队列的多线程数据处理的方法、系统及设备 Download PDFInfo
- Publication number
- CN114253714B CN114253714B CN202111487797.9A CN202111487797A CN114253714B CN 114253714 B CN114253714 B CN 114253714B CN 202111487797 A CN202111487797 A CN 202111487797A CN 114253714 B CN114253714 B CN 114253714B
- Authority
- CN
- China
- Prior art keywords
- queue
- data
- blocking
- consumer thread
- blocking queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000000903 blocking effect Effects 0.000 title claims abstract description 103
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012545 processing Methods 0.000 title claims abstract description 23
- 238000004891 communication Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 5
- 230000005540 biological transmission Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 7
- 238000012797 qualification Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及数据处理技术领域,具体涉及一种基于阻塞队列的多线程数据处理的方法、系统及设备。一种基于阻塞队列的多线程数据处理的方法,包括以下步骤:创建阻塞队列;生产者线程完成自身任务后,判断阻塞队列的容量是否已达到预设容量值,若是,则排队等待,若否,则从阻塞队列尾部插入数据;判断队列是否为空,若是,则阻塞消费者线程;若否,则令消费者线程环从阻塞队列的首部获取数据;待消费者线程获取到全部的数据后,则进行消费者线程的任务。本发明可降低CPU的负担并提高传输数据过程中对线程数量的适应性。同时可在多线程中有数据依赖的情况下,保证数据高效安全的传输,从而为快速搭建高质量的多线程程序带来极大的便利。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种基于阻塞队列的多线程数据处理的方法、系统及设备。
背景技术
现有的处理多线程数据依赖的方法大致可以划分为两类,一类是循环读取,每个生产者线程实例有一个初始状态,当执行完毕后更改状态,消费线程类中有个List用来记录所有生产者线程,每次创建后都会将生产者线程添加到List中。所有生产者线程创建完成之后,通过消费线程的start方法启动所有生产者线程,并通过一个while循环来遍历List中的所有生产者线程的状态,判断是否全部生产者线程执行完毕,若是再继续执行消费线程,此种方法会使用到多个while循环会增加CPU的负担。另一类是CountDownLatch类,该类通过计数器的方式实现,计数器初始值为线程的数量,每当一个线程执行完后,计数器减1,当计数器值为0时,表示所有线程执行完成,此种方法需要已知生产者线程数量,且只适用于多对一,适应性低。
发明内容
为克服上述问题或部分解决上述问题,本发明的目的在于提供一种基于阻塞队列的多线程数据处理的方法、系统及设备,可降低CPU的负担并提高传输数据过程中对线程数量的适应性。
本发明通过下述技术方案实现:
第一方面,本发明实施例提供一种基于阻塞队列的多线程数据处理的方法,包括以下步骤:S101、创建阻塞队列;S102、生产者线程完成自身任务后,判断上述阻塞队列的容量是否已达到预设容量值,若是,则排队等待,若否,则从上述阻塞队列尾部插入数据;S103、判断队列是否为空,若是,则阻塞消费者线程;若否,则令消费者线程环从上述阻塞队列的首部获取数据;S104、待上述消费者线程获取到全部的数据后,则进行消费者线程的任务。
基于第一方面,在本发明一些实施例中,上述阻塞队列的创建包括:选择阻塞队列的类别、设定队列的最大容量,调用工具包创建阻塞队列。
基于第一方面,在本发明一些实施例中,上述工具包包括:java.util.concurrent.Blocking Queue和Linked Blocking Queue。
基于第一方面,在本发明一些实施例中,当有多条生产者线程时,按照自身任务完成时间的先后顺序排队,依次向上述阻塞队列尾部插入数据。
基于第一方面,在本发明一些实施例中,上述消费者线程是否获取到全部的数据的判断方式为:在队列不为空的情况下,消费者线程环从上述阻塞队列的首部获取数据,若超过预设时限仍没有获取到数据,则视为生产者线程均已经完成,消费者线已取到全部的数据。
基于第一方面,在本发明一些实施例中,上述令消费者线程环从上述阻塞队列的首部获取数据之前还包括:若队列不为空,则进一步判断队列中是否有数据,若是,则从上述阻塞队列的首部获取数据,若否,则消费者线程退出,然后完成消费者线程的任务。
第二方面,本发明实施例提供一种基于阻塞队列的多线程数据处理的系统,包括:队列创建模块:用于创建阻塞队列;第一判断模块:用于生产者线程完成自身任务后,判断上述阻塞队列的容量是否超过预设容量值,若是,则排队等待,若否,则从上述阻塞队列尾部插入数据;第二判断模块:用于判断队列是否为空,若是,则阻塞消费者线程;若否,则令消费者线程环从上述阻塞队列的首部获取数据;获取模块:用于消费者线程获取数据。
基于第二方面,在本发明一些实施例中,上述第一判断模块包括:第一执行单元,用于在阻塞队列的容量超过预设容量值时,执行排队等待的操作;第二执行单元,用于在阻塞队列的容量未超过预设容量值时,执行从上述阻塞队列尾部插入数据的操作。
基于第二方面,在本发明一些实施例中,上述第二判断模块包括:第三执行单元:用于在队列为空的情况下,阻塞消费者线程;第四执行单元:用于在队列不为空的情况下,令消费者线程从上述阻塞队列的首部获取数据。
第三方面,本发明实施例提供一种电子设备,包括:至少一个处理器、至少一个存储器和数据总线;其中,上述处理器与上述存储器通过上述数据总线完成相互间的通信;上述存储器存储有可被上述处理器执行的程序指令,上述处理器调用上述程序指令以执行上述一个或多个程序或方法。
本发明与现有技术相比,至少具有如下的优点和有益效果:
本发明可降低CPU的负担并提高传输数据过程中对线程数量的适应性。同时可在多线程中有数据依赖的情况下,保证数据高效安全的传输,从而为快速搭建高质量的多线程程序带来极大的便利。
附图说明
为了更清楚地说明本发明示例性实施方式的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。在附图中:
图1为一种基于阻塞队列的多线程数据处理的方法一实施例的流程示意图;
图2为一种基于阻塞队列的多线程数据处理的方法一实施例中贷款资质审查场景示意图;
图3为一种基于阻塞队列的多线程数据处理的方法一实施例中生产者线程数据插入流程图;
图4为一种基于阻塞队列的多线程数据处理的方法一实施例中消费者线程数据获取流程图;
图5为一种基于阻塞队列的多线程数据处理的系统一实施例的结构框图;
图6为一种电子设备的结构框图。
图标:1-处理器;2-存储器;3-数据总线;100-队列创建模块;200-第一判断模块;201-第一执行单元;202-第二执行单元;300-第二判断模块;301-第三执行单元;302-第四执行单元;400-获取模块。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
需要说明的是,在本发明的描述中,出现的术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1
请参照图1,在本发明实施例提供一种基于阻塞队列的多线程数据处理的方法,包括以下步骤:
S101、创建阻塞队列;
示例性的,首先需要选择阻塞队列的类别、设定队列的长度及最大容量,然后可通过引入java.util.concurrent.BlockingQueue、LinkedBlockingQueue等工具包来辅助创建阻塞队列,例如BlockingQueue<String>queue=new LinkedBlockingQueue<String>(10)。此队列的容量为10。
S102、生产者线程完成自身任务后,判断上述阻塞队列的容量是否已超过预设容量值,若是,则排队等待,若否,则从上述阻塞队列尾部插入数据;
阻塞队列创建完成后启动各生产者线程,各生产者线程完成自身任务后,(在未设定优先放入数据规则的情况下)则按照自身任务完成时间的先后顺序排队,依次向上述阻塞队列尾部插入数据。而生产者线程在向阻塞队列尾部发送数据之前,需要先判断上述阻塞队列的容量是否已达到预设容量值(队列满),若阻塞队列当前的容量已达到预设容量值,则阻塞已完成自身任务的生产者线程,不允许其余生产者线程放入数据,同时继续检测阻塞队列中当前的容量情况,待测阻塞队列中的数据被取出后,生产者线程便能够继续往阻塞队列插入数据。
S103、判断阻塞队列是否为空,若是,则阻塞消费者线程;若否,则令消费者线程环从上述阻塞队列的首部获取数据;
在消费侧,则由消费者线程从阻塞队列的首部取出数据,在取数据前,首先需要判断阻塞队列是否为空,若为空,则意味着还没有生产者线程将数据插入,则消费者线程无法消费阻塞队列数据,因此,则将消费者线程阻塞,如此可降低对CPU的消耗。若阻塞队列不为空,对于只有一个消费者的情况,则消费者直接从上述阻塞队列的首部获取数据;对于有多条消费者线程的情况,则当前消费者线程进一步判断队列中是否有数据,若有,则当前消费者线程从上述阻塞队列的首部获取数据,若无,则意味数据已经被别的消费者获取了,则无需重复获取,待消费者线程取到全部的数据后,消费者线程退出,然后完成自身的线程的任务。
S104、待上述消费者线程获取到全部的数据后,则进行消费者线程的任务。
示例性的,对是否获取到全部数据的判断方式为:在队列不为空的情况下,消费者线程环从上述阻塞队列的首部获取数据,若超过预设时限仍没有获取到数据,则视为生产者线程均已经完成,消费者线已取到全部的数据。具体的,具体时限可以为2秒。
实施例2
具体的,若用户需要进行贷款,银行会对他的资质进行审核,在征得用户同意前提下,分别查询用户的银行流水、逾期信息、房屋信息,然后通过这些数据汇总综合给出用户的额度。这个场景如图2,此时三个查询的任务是多线程并行执行的(即生产者线程),最终消费线程(即消费者线程)又要用到三个生产者线程的数据,这时就可以用到本方法。
具体的,每一个生产者线程的运行过程,如图3所示,具体为:
首先初始化定义标志位为TRUE,进入生产者线程;进行生产者本身工作,比如查银行流水;将流水信息结果放入队列;判断队列容量是否超过10,超过则阻塞线程,不允许其余生产者放入数据;否则,继续执行;同时判断是否超过设置时间2s,超过则表示流水信息存入失败,否则继续执行,存入流水数据后相当于生产者线程完成一次任务;循环继续执行,判断生产者标志,直到为FALSE,则意味着所有的生产者线程执行完毕。
具体的,消费线程的运行过程,如图4所示,具体为:
首先初始化定义标志位为TRUE,进入消费者线程;从队列头部获取数据,并判断队列是否为空,若为空阻塞消费者线程;若不为空继续判断是否有数据,有数据时直接从队列从头部取走,进行消费者流程,如计算额度;若超过2s没有数据,则返回失败,将标志位设为FALSE。
实施例3
请参照图5,在本发明些实施例提供一种基于阻塞队列的多线程数据处理的系统,队列创建模块100:用于创建阻塞队列;第一判断模块200:用于生产者线程完成自身任务后,判断上述阻塞队列的容量是否超过预设容量值,若是,则排队等待,若否,则从上述阻塞队列尾部插入数据;第二判断模块300:用于判断队列是否为空,若是,则阻塞消费者线程;若否,则令消费者线程环从上述阻塞队列的首部获取数据;获取模块400:用于消费者线程获取数据。
其中,第一判断模块200包括:第一执行单元201,用于在阻塞队列的容量超过预设容量值时,执行排队等待的操作;第二执行单元202,用于在阻塞队列的容量未超过预设容量值时,执行从上述阻塞队列尾部插入数据的操作。
上述第二判断模块300包括:第三执行单元301:用于在队列为空的情况下,阻塞消费者线程;第四执行单元302:用于在队列不为空的情况下,令消费者线程从上述阻塞队列的首部获取数据。
本发明实施例所提供的系统可用于执行上述实施例所描述的方法,具体方法步骤见实施例1。在此不作赘述。
实施例4
本发明实施例提供一种电子设备,包括:至少一个处理器1、至少一个存储器2和数据总线3;其中,上述处理器1与上述存储器2通过上述数据总线3完成相互间的通信;上述存储器2存储有可被上述处理器1执行的程序指令,上述处理器1调用上述程序指令以执行上述实施例中的方法,例如执行:。
图6为本申请实施例提供的一种电子设备的一种示意性结构框图。电子设备包括存储器2、处理器1和数据总线3,该存储器2、处理器1和数据总线3相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器2可用于存储软件程序及模块,如本申请实施例所提供电子设备对应的程序指令/模块,处理器1通过执行存储在存储器2内的软件程序及模块,从而执行各种功能应用以及数据处理。该数据总线3可用于与其他节点设备进行信令或数据的通信。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于阻塞队列的多线程数据处理的方法,其特征在于,包括以下步骤:
创建阻塞队列;
生产者线程完成自身任务后,判断所述阻塞队列的容量是否已达到预设容量值,若是,则排队等待,若否,则从所述阻塞队列尾部插入数据;
判断队列是否为空,若是,则阻塞消费者线程;若否,则进一步判断队列中是否有数据,若是,令消费者线程环从所述阻塞队列的首部获取数据,若否,则消费者线程退出,然后完成消费者线程的任务;
待所述消费者线程获取到全部的数据后,则进行消费者线程的任务。
2.根据权利要求1所述的基于阻塞队列的多线程数据处理的方法,其特征在于,所述阻塞队列的创建包括:选择阻塞队列的类别、设定队列的最大容量,调用工具包创建阻塞队列。
3.根据权利要求2所述的基于阻塞队列的多线程数据处理的方法,其特征在于,所述工具包包括:java.util.concurrent.BlockingQueue和LinkedBlockingQueue。
4.根据权利要求1所述的基于阻塞队列的多线程数据处理的方法,其特征在于,当有多条生产者线程时,按照自身任务完成时间的先后顺序排队,依次向所述阻塞队列尾部插入数据。
5.根据权利要求1所述的基于阻塞队列的多线程数据处理的方法,其特征在于,所述消费者线程是否获取到全部的数据的判断方式为:
在队列不为空的情况下,消费者线程环从所述阻塞队列的首部获取数据,若超过预设时限仍没有获取到数据,则视为生产者线程均已经完成,消费者线已取到全部的数据。
6.一种基于阻塞队列的多线程数据处理的系统,其特征在于,包括:
队列创建模块:用于创建阻塞队列;
第一判断模块:用于生产者线程完成自身任务后,判断所述阻塞队列的容量是否超过预设容量值,若是,则排队等待,若否,则从所述阻塞队列尾部插入数据;
第二判断模块:用于判断队列是否为空,若是,则阻塞消费者线程;若否,则进一步判断队列中是否有数据,若是,令消费者线程环从所述阻塞队列的首部获取数据,若否,则消费者线程退出,然后完成消费者线程的任务;
获取模块:用于消费者线程获取数据,待所述消费者线程获取到全部的数据后,则进行消费者线程的任务。
7.根据权利要求6所述的多线程数据处理的系统,其特征在于,所述第一判断模块包括:
第一执行单元,用于在阻塞队列的容量超过预设容量值时,执行排队等待的操作;
第二执行单元,用于在阻塞队列的容量未超过预设容量值时,执行从所述阻塞队列尾部插入数据的操作。
8.根据权利要求6所述的多线程数据处理的系统,其特征在于,所述第二判断模块包括:
第三执行单元:用于在队列为空的情况下,阻塞消费者线程;
第四执行单元:用于在队列不为空的情况下,令消费者线程从所述阻塞队列的首部获取数据。
9.一种电子设备,其特征在于,包括:至少一个处理器、至少一个存储器和数据总线;
其中,所述处理器与所述存储器通过所述数据总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令以执行如权利要求1至5任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111487797.9A CN114253714B (zh) | 2021-12-07 | 2021-12-07 | 一种基于阻塞队列的多线程数据处理的方法、系统及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111487797.9A CN114253714B (zh) | 2021-12-07 | 2021-12-07 | 一种基于阻塞队列的多线程数据处理的方法、系统及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114253714A CN114253714A (zh) | 2022-03-29 |
CN114253714B true CN114253714B (zh) | 2024-04-12 |
Family
ID=80794194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111487797.9A Active CN114253714B (zh) | 2021-12-07 | 2021-12-07 | 一种基于阻塞队列的多线程数据处理的方法、系统及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114253714B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408239A (zh) * | 2018-10-31 | 2019-03-01 | 长沙新弘软件有限公司 | 一种基于队列的异步io处理方法 |
CN110569308A (zh) * | 2019-09-10 | 2019-12-13 | 深圳乐信软件技术有限公司 | 一种数据文件组装方法、装置、设备及储存介质 |
CN111475300A (zh) * | 2020-04-09 | 2020-07-31 | 江苏盛海智能科技有限公司 | 一种多线程多任务管理方法及终端 |
CN112631771A (zh) * | 2020-12-18 | 2021-04-09 | 江苏康融科技有限公司 | 一种大数据系统的并行处理方法 |
CN113010334A (zh) * | 2021-03-31 | 2021-06-22 | 中国工商银行股份有限公司 | 一种请求处理方法、装置和设备 |
CN113608899A (zh) * | 2021-10-08 | 2021-11-05 | 创智和宇信息技术股份有限公司 | 轻量级数据生产-消费者模式处理方法、系统及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9256461B2 (en) * | 2013-09-18 | 2016-02-09 | International Business Machines Corporation | Handling interrupt actions for inter-thread communication |
US11086691B2 (en) * | 2019-04-04 | 2021-08-10 | Sap Se | Producer-consumer communication using multi-work consumers |
-
2021
- 2021-12-07 CN CN202111487797.9A patent/CN114253714B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408239A (zh) * | 2018-10-31 | 2019-03-01 | 长沙新弘软件有限公司 | 一种基于队列的异步io处理方法 |
CN110569308A (zh) * | 2019-09-10 | 2019-12-13 | 深圳乐信软件技术有限公司 | 一种数据文件组装方法、装置、设备及储存介质 |
CN111475300A (zh) * | 2020-04-09 | 2020-07-31 | 江苏盛海智能科技有限公司 | 一种多线程多任务管理方法及终端 |
CN112631771A (zh) * | 2020-12-18 | 2021-04-09 | 江苏康融科技有限公司 | 一种大数据系统的并行处理方法 |
CN113010334A (zh) * | 2021-03-31 | 2021-06-22 | 中国工商银行股份有限公司 | 一种请求处理方法、装置和设备 |
CN113608899A (zh) * | 2021-10-08 | 2021-11-05 | 创智和宇信息技术股份有限公司 | 轻量级数据生产-消费者模式处理方法、系统及存储介质 |
Non-Patent Citations (3)
Title |
---|
"A Dynamic Multi-Threaded Queuing Mechanism for Reducing the Inter-Process Communication Latency on Multi-Core Chips";Rohitshankar Mishra;《2020 3rd International Conference on Data Intelligence and Security(ICDIS)》;20210120;第12-19页 * |
"互联网银行调度平台的设计与实现";徐烨辰;《中国优秀硕士学位论文全文数据库 信息科技辑》;20210315(2021年第03期);第I138-91页 * |
"基于ZooKeeper的分布式同步框架设计与实现";黄毅斐;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140215(2014年第02期);第I137-45页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114253714A (zh) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10360523B2 (en) | System and method for executing business services and enhancing business performance through a business process modeling notation | |
TWI267782B (en) | Deallocation of computer data in a multithreaded computer | |
CN108319495B (zh) | 任务处理方法及装置 | |
US8997101B2 (en) | Scalable thread locking with customizable spinning | |
US20070033640A1 (en) | Generic context service in a distributed object environment | |
US6295602B1 (en) | Event-driven serialization of access to shared resources | |
WO2013044256A1 (en) | Processor configured to perform transactional memory operations | |
CN110609755A (zh) | 跨区块链节点的消息处理方法及装置、设备、介质 | |
JP4971676B2 (ja) | 割り込み制御回路及び割り込み制御方法 | |
CN114253714B (zh) | 一种基于阻塞队列的多线程数据处理的方法、系统及设备 | |
CN110347735A (zh) | 配置化的数据转发异常补处理方法、装置及可读存储介质 | |
CN114691241B (zh) | 任务执行方法、装置、电子设备及存储介质 | |
US20130152098A1 (en) | Task priority boost management | |
US9842009B2 (en) | Method and device for detecting a race condition and a computer program product | |
CN113127314B (zh) | 一种检测程序性能瓶颈的方法、装置及计算机设备 | |
CN111241594A (zh) | 交易信息的加签方法、装置、计算机设备和存储介质 | |
US9430196B2 (en) | Message inlining | |
JPWO2008111382A1 (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN111078326A (zh) | 一种功能模块的调用方法、装置及设备 | |
CN112379952B (zh) | 一种跨进程回调的实现方法 | |
CN109783242A (zh) | 海外控股估值流程控制方法、装置、计算机设备及存储介质 | |
US20130185727A1 (en) | Method for managing tasks in a microprocessor or in a microprocessor assembly | |
US20080163224A1 (en) | Modeling interrupts in a business process | |
CN113326311A (zh) | 一种数据转换方法及装置 | |
CN113032128A (zh) | 一种多任务的控制方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |