CN111143065A - 一种数据处理方法、装置、设备及介质 - Google Patents
一种数据处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN111143065A CN111143065A CN201911360507.7A CN201911360507A CN111143065A CN 111143065 A CN111143065 A CN 111143065A CN 201911360507 A CN201911360507 A CN 201911360507A CN 111143065 A CN111143065 A CN 111143065A
- Authority
- CN
- China
- Prior art keywords
- message
- data
- messages
- processing
- thread
- 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.)
- Granted
Links
Images
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/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- 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)
Abstract
本申请公开了一种数据处理方法、装置、设备及介质,包括:获取待处理数据对应的消息;所述消息包括消息内容和消息类型;利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。这样,利用多线程处理数据可以提升数据处理效率,并且,任一线程在进行消息处理时获取当前消息类型对应的资源锁,消息处理完成则释放对应的资源锁,保证了消息处理的同步,在释放资源锁之后,其他线程能够进行相应类型的消息处理,从而提升了线程利用率,避免资源浪费。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种数据处理方法、装置、设备及介质。
背景技术
随着信息技术的发展,海量数据随时产生,如何进行数据处理被广泛关注。
在现有技术中,存在单队列-单消费者(单线程)的处理方式,这种方式不需要考虑数据处理的同步问题,但由于单线程处理操作比较耗时,会阻塞数据流处理让数据处理延时越来越久,甚至会直接导致数据堆积,影响机器性能。而采用多队列-多消费者(线程池),队列消费者一一对应,保证相关联的数据进入同一队列被同一消费者处理,但是当一类数据大量存在的情况下,其性能则无线接近单队列-单消费者,其它队列和消费者一直处于空闲状态,造成浪费资源。
发明内容
有鉴于此,本申请的目的在于提供一种数据处理方法、装置、设备及介质,能够保证消息处理的同步,并提升线程利用率,避免资源浪费。其具体方案如下:
第一方面,本申请公开了一种数据处理方法,包括:
获取待处理数据对应的消息;所述消息包括消息内容和消息类型;
利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;
当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。
可选的,所述获取待处理数据对应的消息之后,还包括:
将所述消息存储至预设数据区。
可选的,所述利用多线程按照所述消息的获取顺序进行消息读取,包括:
利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息。
可选的,所述获取待处理数据对应的消息之后,还包括:
为所述消息生成对应的所述序列号,并将所述序列号加入所述序列链。
可选的,所述利用多线程按照所述消息的获取顺序进行消息读取,包括:
利用线程池按照所述消息的获取顺序进行消息读取。
第二方面,本申请公开了一种数据处理装置,包括:
消息获取模块,用于获取待处理数据对应的消息;所述消息包括消息内容和消息类型;
消息处理模块,用于利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;
资源锁释放模块,用于当所述线程完成对应的所述消息处理,则释放所述消息类型对应的所述资源锁。
可选的,所述数据处理装置,还包括:
数据存储模块,用于将所述消息存储至预设数据区。
可选的,所述消息处理模块,具体用于利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理。
第三方面,本申请公开了一种数据处理设备,包括处理器和存储器;其中,
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现前述的数据处理方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述的数据处理方法。
可见,本申请获取待处理数据对应的消息;所述消息包括消息内容和消息类型,以及利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理,当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。这样,利用多线程处理数据可以提升数据处理效率,并且,任一线程在进行消息处理时获取当前消息类型对应的资源锁,消息处理完成则释放对应的资源锁,保证了消息处理的同步,在释放资源锁之后,其他线程能够进行相应类型的消息处理,从而提升了线程利用率,避免资源浪费。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种数据处理方法流程图;
图2为本申请公开的一种具体的数据处理方法流程图;
图3为本申请公开的一种具体的数据处理方法流程图;
图4为本申请公开的一种数据处理装置结构示意图;
图5为本申请公开的一种数据处理设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1所示,本申请实施例公开了一种数据处理方法,包括:
步骤S11:获取待处理数据对应的消息;所述消息包括消息内容和消息类型。
步骤S12:利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理。
在具体的实施方式中,本实施例利用线程池按照所述消息的获取顺序进行消息读取。也即,本实施例利用线程池技术实现多线程。本实施例中,线程池中的任一线程进行消息处理时,会从锁池中获取与当前消息类型对应的资源锁,也即,获取了对应消息类型的处理权,如果获取到与当前消息类型对应的资源锁,在该资源锁释放前,其他线程无法处理与当前消息类型相同的消息。
例如,实现进行消息处理的任务R1,R1可以订阅消息的获取信号,R1对应的线程池包括3个线程,当订阅到消息的获取信息号,则按消息获取顺序通过消息类型在锁池中获取对应的资源锁,为实现消息并发处理的同步,R1不同时处理同一类型的消息,线程1先获取了消息(M1,K1)的处理权,线程2获取了(M2,K2)的处理权,线程3在获取(M3,K1)的处理权时,若R1的处理耗时较长,在线程1并没有处理完成的情况下,由于线程1获取了K1消息类型对应的资源锁,线程3不能获取到(M3,K1)的处理权,只能获取下一个消息(M4,K3)的处理权。其中,M为消息内容,K为消息类型,消息(M1,K1)和(M3,K1)的消息类型均为K1,不能同时处理。也即,同类型的消息互斥。比如,处理资产数据(ip),那么ip是互斥的关键字,同一个ip的数据之间处理是互斥不同ip的数据可以并发。处理漏洞数据(vulnerability),漏洞是互斥的关键字,同一个漏洞的数据之间处理时互斥的,不同漏洞的数据可以并发处理。这样,根据业务情况,将业务数据的处理拆分为不同的步骤,每一步骤的互斥关键字不同,数据在不同步骤之间的互斥关系是不一样的,由此细化了每一步骤数据处理的颗粒度,保证了数据并发的效率。
并且,本实施例的锁池利用了CAS(即Compare And Swap,比较和替换)技术,实现相应的消息的同步和并发。
步骤S13:当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。
也即,当任一所述线程完成对应的所述消息处理,则去复原锁池中相应消息类型的资源锁状态,即释放对应的所述资源锁,释放后,其他线程可以获取该消息类型消息的资源锁,以进行相应的消息处理。
可见,本申请实施例获取待处理数据对应的消息;所述消息包括消息内容和消息类型,以及利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理,当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。这样,利用多线程处理数据可以提升数据处理效率,并且,任一线程在进行消息处理时获取当前消息类型对应的资源锁,消息处理完成则释放对应的资源锁,保证了消息处理的同步,在释放资源锁之后,其他线程能够进行相应类型的消息处理,从而提升了线程利用率,避免资源浪费。
参见图2所示,本申请实施例公开了一种具体的数据处理方法,包括:
步骤S21:获取待处理数据对应的消息;所述消息包括消息内容和消息类型。
步骤S22:为所述消息生成对应的序列号,并将所述序列号加入序列链。
在具体的实施方式中,当获取到消息(M1,K1),则为消息(M1,K1)生成一个标记序列号N,然后将序列号N加入序列链,其前置位是N-1,后置位则是N+1,同样获取消息(M2,K2)、消息(M3,K1)、消息(M4,K3)消息(M5,K2),生成相应的序列号,添加至序列链。也即,利用序列链以及序列号来定位消息的获取先后顺序。
步骤S23:将所述消息存储至预设数据区。
步骤S24:利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理。
也即,消息存储在预设数据区,通过序列号进行查询。
步骤S25:当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。
其中,关于上述步骤S24和步骤S25的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
例如,基于本方案实现一个数据处理模型,该数据处理模型包括序列链、数据区、锁池和工作链,其中,序列链用于定位消息处理先后顺序,消息进入数据模型后被标记一个序列号,将序列号加入序列链。数据区为消息进入数据模型后存储位置,可通过序列号进行定位查询。锁池可以通过CAS算法获取某消息的可处理状态,控制消息处理同步和并发。工作链标识一个事件从开始处理到处理结束的所有操作流程,每一个操作都可配置一个线程池,细化操作处理的粒度和提高并发处理性能。也即,根据业务中数据处理的步骤,实现工作链,针对每个步骤创建相应的任务,每个任务配置一个线程池,以形成对应的任务链。例如,参见图3所示,图3为本实施例公开了一种具体的数据处理方法流程图,当获取到待处理数据对应的消息,则将消息压入该数据模型,生成对应序列号并将序列号添加至序列链,存储消息,任务链订阅到消息压入信号,则通知对应的线程池去获取可处理的消息,若当前任务对应的线程池为单线程池,则获取序列链上的序列号进行按顺序处理相应消息;若当前任务对应的线程池为多线程池,线程池中的线程则会从序列链上的起始位置开始通过消息类型在锁池中获取对应的资源锁,当前线程池不同时处理同一类型的消息,当任一线程对消息处理完成,首先会去复原锁池中相应类型的资源锁状态,然后空闲线程继续执行,也即,在线程去锁池获取资源时,若相应类型消息的资源锁已被其他线程获取,则无法资源锁无法获取成功,获取到资源锁后可进行相应的消息处理操作。通过实践,向数据模型压入随机压入一批消息(Mn,Kx),x范围是(1~2),数据模型的将消息存储,会通知线程池开始获取任务处理,极大提升了数据处理性能。
参见图4所示,本实施例公开了一种数据处理装置,包括:
消息获取模块11,用于获取待处理数据对应的消息;所述消息包括消息内容和消息类型;
消息处理模块12,用于利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;
资源锁释放模块13,用于当所述线程完成对应的所述消息处理,则释放所述消息类型对应的所述资源锁。
可见,本申请实施例获取待处理数据对应的消息;所述消息包括消息内容和消息类型,以及利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理,当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。这样,利用多线程处理数据可以提升数据处理效率,并且,任一线程在进行消息处理时获取当前消息类型对应的资源锁,消息处理完成则释放对应的资源锁,保证了消息处理的同步,在释放资源锁之后,其他线程能够进行相应类型的消息处理,从而提升了线程利用率,避免资源浪费。
所述数据处理装置,还包括数据存储模块,用于将所述消息存储至预设数据区。
所述数据处理装置,还包括序列号生成模块,用于为所述消息生成对应的序列号,并将序列号加入序列链。
相应的,所述消息处理模块12,具体用于利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理。
其中,所述消息处理模块12,用于利用线程池按照所述消息的获取顺序进行消息读取。
参见图5所示,本申请实施例公开了一种数据处理设备,包括处理器21和存储器22;其中,所述存储器22,用于保存计算机程序;所述处理器21,用于执行所述计算机程序,以实现以下步骤:
获取待处理数据对应的消息;所述消息包括消息内容和消息类型;利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。
可见,本申请实施例获取待处理数据对应的消息;所述消息包括消息内容和消息类型,以及利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理,当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。这样,利用多线程处理数据可以提升数据处理效率,并且,任一线程在进行消息处理时获取当前消息类型对应的资源锁,消息处理完成则释放对应的资源锁,保证了消息处理的同步,在释放资源锁之后,其他线程能够进行相应类型的消息处理,从而提升了线程利用率,避免资源浪费。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:将所述消息存储至预设数据区。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:为所述消息生成对应的所述序列号,并将所述序列号加入所述序列链。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:利用线程池按照所述消息的获取顺序进行消息读取。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,计算机程序被处理器执行时实现以下步骤:
获取待处理数据对应的消息;所述消息包括消息内容和消息类型;利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。
可见,本申请实施例获取待处理数据对应的消息;所述消息包括消息内容和消息类型,以及利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理,当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。这样,利用多线程处理数据可以提升数据处理效率,并且,任一线程在进行消息处理时获取当前消息类型对应的资源锁,消息处理完成则释放对应的资源锁,保证了消息处理的同步,在释放资源锁之后,其他线程能够进行相应类型的消息处理,从而提升了线程利用率,避免资源浪费。
本实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:将所述消息存储至预设数据区。
本实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息。
本实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:为所述消息生成对应的所述序列号,并将所述序列号加入所述序列链。
本实施例中,计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:利用线程池按照所述消息的获取顺序进行消息读取。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种数据处理方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取待处理数据对应的消息;所述消息包括消息内容和消息类型;
利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;
当任一所述线程完成对应的所述消息处理,则释放对应的所述资源锁。
2.根据权利要求1所述的数据处理方法,其特征在于,所述获取待处理数据对应的消息之后,还包括:
将所述消息存储至预设数据区。
3.根据权利要求2所述的数据处理方法,其特征在于,所述利用多线程按照所述消息的获取顺序进行消息读取,包括:
利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息。
4.根据权利要求3所述的数据处理方法,其特征在于,所述获取待处理数据对应的消息之后,还包括:
为所述消息生成对应的所述序列号,并将所述序列号加入所述序列链。
5.根据权利要求1所述的数据处理方法,其特征在于,所述利用多线程按照所述消息的获取顺序进行消息读取,包括:
利用线程池按照所述消息的获取顺序进行消息读取。
6.一种数据处理装置,其特征在于,包括:
消息获取模块,用于获取待处理数据对应的消息;所述消息包括消息内容和消息类型;
消息处理模块,用于利用多线程按照所述消息的获取顺序进行消息读取,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理;
资源锁释放模块,用于当所述线程完成对应的所述消息处理,则释放所述消息类型对应的所述资源锁。
7.根据权利要求6所述的数据处理装置,其特征在于,还包括:
数据存储模块,用于将所述消息存储至预设数据区。
8.根据权利要求7所述的数据处理装置,其特征在于,所述消息处理模块,具体用于利用多线程按照序列链中的序列号从所述预设数据区中读取对应的所述消息,任一所述线程通过读取到的所述消息对应的所述消息类型从锁池中获取对应的资源锁,并进行对应的消息处理。
9.一种数据处理设备,其特征在于,包括处理器和存储器;其中,
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现如权利要求1至5任一项所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360507.7A CN111143065B (zh) | 2019-12-25 | 2019-12-25 | 一种数据处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360507.7A CN111143065B (zh) | 2019-12-25 | 2019-12-25 | 一种数据处理方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111143065A true CN111143065A (zh) | 2020-05-12 |
CN111143065B CN111143065B (zh) | 2023-08-22 |
Family
ID=70520241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911360507.7A Active CN111143065B (zh) | 2019-12-25 | 2019-12-25 | 一种数据处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111143065B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020124241A1 (en) * | 2001-03-02 | 2002-09-05 | James Grey | System and method for synchronizing execution of a batch of threads |
CN1917504A (zh) * | 2005-08-20 | 2007-02-21 | 中兴通讯股份有限公司 | 一种避免资源数据共享访问导致死锁的加锁方法 |
US20090249356A1 (en) * | 2008-03-31 | 2009-10-01 | Xin He | Lock-free circular queue in a multiprocessing system |
US7739385B1 (en) * | 2003-06-16 | 2010-06-15 | Cisco Technology, Inc. | Explicit locking of resources in devices accessible on a network |
US20100242043A1 (en) * | 2009-03-18 | 2010-09-23 | Charles Scott Shorb | Computer-Implemented Systems For Resource Level Locking Without Resource Level Locks |
US20120096239A1 (en) * | 2010-10-19 | 2012-04-19 | Empire Technology Development Llc | Low Power Execution of a Multithreaded Program |
CN102868635A (zh) * | 2012-08-24 | 2013-01-09 | 汉柏科技有限公司 | 多核多线程的报文保序方法及系统 |
US20130081060A1 (en) * | 2011-09-22 | 2013-03-28 | Oleksandr Otenko | System and Method for Efficient Concurrent Queue Implementation |
CN103365705A (zh) * | 2012-03-27 | 2013-10-23 | 腾讯科技(深圳)有限公司 | 消息队列处理方法和装置 |
CN105700937A (zh) * | 2016-01-04 | 2016-06-22 | 北京百度网讯科技有限公司 | 多线程任务处理方法和装置 |
WO2016179968A1 (zh) * | 2015-05-13 | 2016-11-17 | 深圳市中兴微电子技术有限公司 | 一种队列管理方法、装置及存储介质 |
CN106325980A (zh) * | 2015-06-30 | 2017-01-11 | 中国石油化工股份有限公司 | 一种多线程并发系统 |
CN106453029A (zh) * | 2015-08-07 | 2017-02-22 | 中兴通讯股份有限公司 | 通知消息处理方法及装置 |
US20170286186A1 (en) * | 2016-03-29 | 2017-10-05 | Microsoft Technology Licensing, Llc | Fast transfer of workload between multiple processors |
CN108304251A (zh) * | 2018-02-06 | 2018-07-20 | 网宿科技股份有限公司 | 线程同步方法及服务器 |
CN108595282A (zh) * | 2018-05-02 | 2018-09-28 | 广州市巨硅信息科技有限公司 | 一种高并发消息队列的实现方法 |
-
2019
- 2019-12-25 CN CN201911360507.7A patent/CN111143065B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020124241A1 (en) * | 2001-03-02 | 2002-09-05 | James Grey | System and method for synchronizing execution of a batch of threads |
US7739385B1 (en) * | 2003-06-16 | 2010-06-15 | Cisco Technology, Inc. | Explicit locking of resources in devices accessible on a network |
CN1917504A (zh) * | 2005-08-20 | 2007-02-21 | 中兴通讯股份有限公司 | 一种避免资源数据共享访问导致死锁的加锁方法 |
US20090249356A1 (en) * | 2008-03-31 | 2009-10-01 | Xin He | Lock-free circular queue in a multiprocessing system |
US20100242043A1 (en) * | 2009-03-18 | 2010-09-23 | Charles Scott Shorb | Computer-Implemented Systems For Resource Level Locking Without Resource Level Locks |
US20120096239A1 (en) * | 2010-10-19 | 2012-04-19 | Empire Technology Development Llc | Low Power Execution of a Multithreaded Program |
US20130081060A1 (en) * | 2011-09-22 | 2013-03-28 | Oleksandr Otenko | System and Method for Efficient Concurrent Queue Implementation |
CN103365705A (zh) * | 2012-03-27 | 2013-10-23 | 腾讯科技(深圳)有限公司 | 消息队列处理方法和装置 |
CN102868635A (zh) * | 2012-08-24 | 2013-01-09 | 汉柏科技有限公司 | 多核多线程的报文保序方法及系统 |
WO2016179968A1 (zh) * | 2015-05-13 | 2016-11-17 | 深圳市中兴微电子技术有限公司 | 一种队列管理方法、装置及存储介质 |
CN106325980A (zh) * | 2015-06-30 | 2017-01-11 | 中国石油化工股份有限公司 | 一种多线程并发系统 |
CN106453029A (zh) * | 2015-08-07 | 2017-02-22 | 中兴通讯股份有限公司 | 通知消息处理方法及装置 |
CN105700937A (zh) * | 2016-01-04 | 2016-06-22 | 北京百度网讯科技有限公司 | 多线程任务处理方法和装置 |
US20170286186A1 (en) * | 2016-03-29 | 2017-10-05 | Microsoft Technology Licensing, Llc | Fast transfer of workload between multiple processors |
CN108304251A (zh) * | 2018-02-06 | 2018-07-20 | 网宿科技股份有限公司 | 线程同步方法及服务器 |
CN108595282A (zh) * | 2018-05-02 | 2018-09-28 | 广州市巨硅信息科技有限公司 | 一种高并发消息队列的实现方法 |
Non-Patent Citations (2)
Title |
---|
刘晓建;吴庆波;戴华东;任怡;: "一种用于并行系统的非阻塞消息队列机制", no. 04, pages 75 - 80 * |
雷治军,谭庆: "数据库的并发控制与多线程机制", no. 05, pages 61 - 63 * |
Also Published As
Publication number | Publication date |
---|---|
CN111143065B (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344172B (zh) | 一种高并发数据处理方法、装置及客户端服务器 | |
US10664385B1 (en) | Debugging in an actor-based system | |
US20170091013A1 (en) | Pcie error reporting and throttling | |
US10943010B2 (en) | Generation of a random value for a child process | |
CN109656725B (zh) | 消息消费者切换方法、装置、存储介质及电子设备 | |
CN107479981B (zh) | 一种基于异步调用实现同步调用的处理方法及装置 | |
CN107341054B (zh) | 任务执行方法、装置及计算机可读存储介质 | |
CN105045632A (zh) | 一种多核环境下实现免锁队列的方法和设备 | |
CN108762905B (zh) | 一种多任务事件的处理方法和装置 | |
CN110618860A (zh) | 基于Spark的Kafka消费并发处理方法及装置 | |
WO2016177081A1 (zh) | 通知消息处理方法及装置 | |
US11275670B2 (en) | Tracing branch instructions | |
CN102929770B (zh) | 嵌入式linux系统用户态任务独占的监测定位方法 | |
CN108776633B (zh) | 监控进程运行的方法、终端设备及计算机可读存储介质 | |
CN109426554B (zh) | 一种服务器的定时实现方法及装置 | |
CN111143065B (zh) | 一种数据处理方法、装置、设备及介质 | |
CN105138450A (zh) | 软件稳定性测试方法及装置 | |
CN115098232A (zh) | 任务调度的方法、装置和设备 | |
WO2016173275A1 (zh) | 一种调试方法、调试装置及存储介质 | |
JP2018538632A (ja) | ノードの再起動後にデータを処理する方法及びデバイス | |
CN105607991A (zh) | 一种基于异步线程的测试方法和装置 | |
WO2017020639A1 (zh) | 网络处理器、报文处理数据的获取方法和存储介质 | |
KR101083049B1 (ko) | 시뮬레이션 시스템 및 시뮬레이션 방법 | |
CN113014414B (zh) | 网络数据的预测方法、装置、系统和服务器 | |
CN112882853A (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 |