CN110008012A - 一种信号量许可的调整方法及装置 - Google Patents
一种信号量许可的调整方法及装置 Download PDFInfo
- Publication number
- CN110008012A CN110008012A CN201910187624.1A CN201910187624A CN110008012A CN 110008012 A CN110008012 A CN 110008012A CN 201910187624 A CN201910187624 A CN 201910187624A CN 110008012 A CN110008012 A CN 110008012A
- Authority
- CN
- China
- Prior art keywords
- parameter
- license
- semaphore
- thread
- goal task
- 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.)
- Pending
Links
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/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/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例公开了一种信号量许可的调整方法及装置,该方法适用于业务过程优化,该方法包括:获取目标任务对应的第一线程池,并获取第一信号量参数,当该第一信号量参数所指示的许可的数量为零且第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,当轮询到第i个第三信号量参数所指示的许可的数量大于零时,将与该第i个第三信号量参数匹配的第四线程池中的许可分派给该目标任务,并调用该第四线程池中的空闲线程处理该目标任务。采用本申请实施例,可以通过信号量参数调整线程池的许可。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种信号量许可的调整方法及装置。
背景技术
目前大部分的任务都是通过线程池中的线程来处理,并且一般在配置好线程池的各个参数之后,不能动态的对线程池的各个参数进行调整。若想调整线程池的参数,必须重新配置这个线程池。当某个任务需要调用线程池中的线程处理时,如果此时线程池中没有了空闲线程,那么该任务就只能等待线程池中出现空闲线程时,才能够调用该线程池中出现的空闲线程处理这个任务,这将导致任务的等待时间长、处理效率低。
发明内容
本申请实施例提供一种信号量许可的调整方法及装置,可以通过信号量参数调整线程池的许可,减少任务的等待时长,提高任务的处理效率。
第一方面,本申请实施例提供了一种信号量许可的调整方法,该方法包括:
获取目标任务对应的第一线程池,并获取与该第一线程池匹配的第一信号量参数,该第一信号量参数用于指示该第一线程池的许可的数量,该第一线程池的许可用于指示该第一线程池的空闲线程;
当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,该信号量参数组中包括该第一信号量参数以及N个第二信号量参数,该第一借用参数用于指示线程池是否允许借用其他线程池的许可,N为大于零的整数;
将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,该第二借用参数用于指示线程池的许可是否允许被其他线程池借用,M小于或等于N;
当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将该第i个第三信号量参数确定为第四信号量参数,i为不大于M的正整数;
将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务,并调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
结合第一方面,在一种可能的实施方式中,在将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务之后,该方法包括:将该第四信号量参数所指示的许可的数量减一。在调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务之后,该方法还包括:当该目标任务处理完成时,释放该第四线程池中分派给该目标任务的许可对应的空闲线程,并将该第四信号量参数所指示的许可的数量加一。
结合第一方面,在一种可能的实施方式中,该方法还包括:
当轮询到该M个第三信号量参数中的各个第三信号量参数所指示的许可的数量均为零时,将该目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量参数所指示的许可的数量大于零;当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
结合第一方面,在一种可能的实施方式中,该方法还包括:
当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为否时,将该目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量参数所指示的许可的数量大于零;当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
结合第一方面,在一种可能的实施方式中,获取目标任务对应的第一线程池,包括:接收该目标任务,并获取该目标任务的目标任务类型;从预设的线程池数据库中获取该目标任务类型对应的第一线程池,其中一个任务类型对应一个线程池。
结合第一方面,在一种可能的实施方式中,该方法还包括:当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的任一许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
第二方面,本申请实施例提供了一种信号量许可的调整装置,该装置包括:
第一获取模块,用于获取目标任务对应的第一线程池,并获取与该第一线程池匹配的第一信号量参数,该第一信号量参数用于指示该第一线程池的许可的数量,该第一线程池的许可用于指示该第一线程池的空闲线程;
第二获取模块,用于当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,该信号量参数组中包括该第一信号量参数以及N个第二信号量参数,该第一借用参数用于指示线程池是否允许借用其他线程池的许可,N为大于零的整数;
第一确定模块,用于将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,该第二借用参数用于指示线程池的许可是否允许被其他线程池借用,M小于或等于N;
第二确定模块,用于当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将该第i个第三信号量参数确定为第四信号量参数,i为不大于M的正整数;
分派模块,用于将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务,并调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
结合第二方面,在一种可能的实施方式中,该装置还包括:增减模块,用于在将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务之后,将该第四信号量参数所指示的许可的数量减一;该增减模块,还用于当该目标任务处理完成时,释放该第四线程池中分派给该目标任务的许可对应的空闲线程,并将该第四信号量参数所指示的许可的数量加一。
结合第二方面,在一种可能的实施方式中,该装置还包括:存储模块,用于当轮询到该M个第三信号量参数中的各个第三信号量参数所指示的许可的数量均为零时,将该目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量参数所指示的许可的数量大于零;上述分派模块,还用于当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
结合第二方面,在一种可能的实施方式中,上述存储模块,还用于当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为否时,将该目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量参数所指示的许可的数量大于零;上述分派模块,还用于当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
结合第二方面,在一种可能的实施方式中,上述第一获取模块包括第一获取单元和第二获取单元。该第一获取单元用于获取目标任务对应的第一线程池;该第二获取单元用于获取与该第一线程池匹配的第一信号量参数。其中,该第一获取单元具体用于:接收该目标任务,并获取该目标任务的目标任务类型;从预设的线程池数据库中获取该目标任务类型对应的第一线程池,其中一个任务类型对应一个线程池。
结合第二方面,在一种可能的实施方式中,上述分派模块,还用于当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的任一许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
第三方面,本申请实施例提供了另一种终端,包括处理器和存储器,该处理器和存储器相互连接,其中,该存储器用于存储支持终端执行上述方法的计算机程序,该计算机程序包括程序指令,该处理器被配置用于调用该程序指令,执行上述第一方面的信号量许可的调整方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时使该处理器执行上述第一方面的信号量许可的调整方法。
本申请实施例通过获取目标任务对应的第一线程池,并获取与该第一线程池匹配的第一信号量参数,当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将该第i个第三信号量参数确定为第四信号量参数,将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务,并调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。可以通过信号量参数调整线程池的许可,减少任务的等待时长,提高任务的处理效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的信号量许可的调整方法的一示意流程图;
图2a是本申请实施例提供的线程池数据库的示意图;
图2b是本申请实施例提供的信号量数据库的示意图;
图3是本申请实施例提供的信号量许可的调整方法的另一示意流程图;
图4是本申请实施例提供的信号量许可的调整装置的一示意性框图;
图5是本申请实施例提供的终端的一示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。调用本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
还应当理解,在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
下面将结合图1至图5,对本申请实施例提供的信号量许可的调整方法及装置进行说明。
参见图1,是本申请实施例提供的信号量许可的调整方法的一示意流程图。如图1所示,该信号量许可的调整方法可包括步骤:
S101,获取目标任务对应的第一线程池,并获取与第一线程池匹配的第一信号量参数。
在一些可行的实施方式中,上述目标任务可以为任务系统提交的任一任务。终端可以接收任务系统提交的目标任务,并可以获取该目标任务的任务类型对应的第一线程池。终端可以从预设的线程池数据库中获取与该第一线程池匹配的第一信号量参数。该预设的线程池数据库中可以包括任务类型、线程池、信号量参数等信息。一个任务类型可以对应一个线程池,一个线程池可以与一个信号量参数匹配。其中,第一信号量参数可以用于指示第一线程池的许可的数量,第一线程池的许可可以用于指示该第一线程池的空闲线程。第一信号量参数所指示的第一线程池的许可的数量大于或等于0,即第一信号量参数的值大于或等于0。
例如,如图2a所示,是本申请实施例提供的线程池数据库的示意图。其中,假设目标任务的任务类型为类型T21,则获取目标任务的类型T21对应的第一线程池,即线程池B1。再获取与线程池B1匹配的第一信号量参数SB1。
S102,当第一信号量参数所指示的许可的数量为零且与第一信号量参数对应的第一借用参数为是时,获取第一信号量参数所属的信号量参数组。
在一些可行的实施方式中,终端在获取到上述第一信号量参数之后,可以检测该第一信号量参数所指示的许可的数量是否为0,即检测该第一信号量参数的值是否为0。当检测到该第一信号量参数所指示的许可的数量为0时,说明上述第一线程池中不存在空闲线程,则终端可以从预设的信号量数据库中获取与该第一信号量参数对应的第一借用参数,并可以检测与该第一信号量参数对应的第一借用参数为是或否。当与该第一信号量参数对应的第一借用参数为是时,说明上述第一线程池可以借用其他线程池的许可,则终端可以从该信号量数据库中获取该第一信号量所属的信号量参数组。其中,第一信号量所属的信号量参数组可以包括第一信号量参数以及N个第二信号量参数,该第二信号量参数可以指本信号量参数组中除第一信号量参数外的任一信号量参数。第一借用参数可以用于指示本线程池是否允许借用其他线程池的许可。预设的信号量数据库可以包括信号量参数、借用参数、信号量参数组等信息。需要说明的是,信号量参数所指示的许可的数量大于或等于0,且信号量参数所指示的许可的数量等于该信号量参数匹配的线程池中空闲线程的数量。
例如,如图2b所示,是本申请实施例提供的信号量数据库的示意图。其中,信号量数据库中包括信号量参数、借用参数、信号量参数组以及线程池。第二借用参数用于指示本线程池中的许可是否允许被其他线程池借用。假设第一信号量参数为SA1,SA1所指示的许可的数量为0。终端检测第一信号量参数SA1对应的第一借用参数为是或否。由于第一信号量参数SA1对应的第一借用参数为是,则终端获取第一信号量参数SA1所属的信号量参数组为SPS_A。信号量参数组SPS_A中包括第一信号量参数SA1以及2个第二信号量参数(分别为SA2、SA3)。
S103,将信号量参数组的N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数。
在一些可行的实施方式中,终端可以检测上述信号量参数组的N个第二信号量参数中各个第二信号量参数对应的第二借用参数为是或否,并可以将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数。该第二借用参数用于指示本线程池中的许可是否允许被其他线程池借用。M小于或等于N,M和N均可以为大于或等于1的整数。
例如,假设第一信号量参数为SA1,第一信号量参数所属的信号量参数组为SPS_A,信号量参数组SPS_A中包括SA2、SA3这2个第二信号量参数。终端分别检测第二信号量参数SA2对应的第二借用参数为是或否、SA3对应的第二借用参数为是或否。由于第二信号量参数SA2对应的第二借用参数为是,则将SA2确定为一个第三信号量参数;第二信号量参数SA3对应的第二借用参数也为是,将SA3确定为另一个第三信号量参数,得到2个第三信号量参数。
S104,当轮询到M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将第i个第三信号量参数确定为第四信号量参数。
在一些可行的实施方式中,信号量参数所指示的线程池的许可的数量大于或等于0。终端在获取到上述M个第三信号量参数之后,可以轮询该M个第三信号量参数中的各个第三信号量参数所指示的许可的数量是否为0,即轮询各个第三信号量参数的值是否为0。当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量不为0时,即第i个第三信号量参数所指示的许可的数量大于0,说明与该第i个第三信号量参数匹配的线程池中存在空闲线程,则可以将该第i个第三信号量参数确定为第四信号量参数。i可以为小于或等于M的正整数。
例如,假设第一信号量参数为SA1,M个第三信号量参数分别为SA2、SA3。终端从第1个第三信号量参数SA2开始轮询M个第三信号量参数(SA2、SA3)中各个第三信号量参数所指示的许可的数量是否为0。假设轮询到第2个第三信号量参数,即SA3所指示的许可的数量大于0,即不为0时,说明与第三信号量参数SA3匹配的线程池中存在空闲线程,则将第2个第三信号量参数SA3确定为第四信号量参数。
S105,将与第四信号量参数匹配的第四线程池中的任一许可分派给目标任务,并调用第四线程池中分派给目标任务的许可对应的空闲线程处理目标任务。
在一些可行的实施方式中,终端可以获取与上述第四信号量参数匹配的第四线程池,并可以向该第四线程池借用许可。终端可以将该第四线程池中借用到的许可分派给上述目标任务,并可以调用该第四线程池中分派给该目标任务的许可所指示的空闲线程处理该目标任务。其中,一个线程一次可处理一个任务,当任务处理完毕后会自动释放线程,以便于该线程处理下一个任务。本申请实施例通过轮询第一信号量参数所属的信号量参数组中的各个信号量参数所指示的许可的数量是否为0,来判断各个信号量参数匹配的线程池中是否有空闲线程。当某个信号量参数所指示的许可的数量不为0(即大于0)时,说明这个信号量参数匹配的线程池中有空闲线程,则借用这个线程池的许可,调用这个线程池的许可所指示的空闲线程处理任务。可以通过信号量参数调整线程池的许可,减少任务的等待时长,提高任务的处理效率。
例如,假设第四信号量参数为SA3,如图2b所示,与第四信号量参数SA3匹配的第四线程池为线程池A3。假设第四信号量参数SA3所指示的许可的数量为4(大于0),即第四信号量参数SA3的值为4,说明第四线程池A3中存在4个空闲线程,则终端向线程池A3借用许可,并将线程池A3中的任一许可(或借用到的许可)分派给目标任务,以便于调用线程池A3中的空闲线程处理目标任务。
在本申请实施例中,终端通过获取目标任务对应的第一线程池,并获取与该第一线程池匹配的第一信号量参数,当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将该第i个第三信号量参数确定为第四信号量参数,将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务,并调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。可以通过信号量参数调整线程池的许可,减少任务的等待时长,提高任务的处理效率。
参见图3,是本申请实施例提供的信号量许可的调整方法的另一示意流程图。如图3所示,该信号量许可的调整方法可包括步骤:
S301,接收目标任务,并获取目标任务的目标任务类型。
S302,从预设的线程池数据库中获取目标任务类型对应的第一线程池,并获取与第一线程池匹配的第一信号量参数。
在一些可行的实施方式中,终端可以接收任务系统提交的目标任务,并可以获取该目标任务所携带的类型标识,获取该类型标识所对应的目标任务类型。终端可以从预设的线程池数据库中获取该目标任务类型对应的第一线程池,并从该线程池数据库中获取与该第一线程池匹配的第一信号量参数。其中,预设的线程池数据库中可以包括任务类型、线程池、信号量参数等信息。一个任务类型可以对应一个线程池,一个线程池可以与一个信号量参数匹配。第一信号量参数可以用于指示第一线程池的许可的数量,第一线程池的许可可以用于指示该第一线程池的空闲线程。第一信号量参数所指示的第一线程池的许可的数量大于或等于0,即第一信号量参数的值大于或等于0。
S303,检测第一信号量参数所指示的许可的数量是否为0。
S304,当第一信号量参数所指示的许可的数量不为0时,将第一线程池中的任一许可分派给目标任务,并调用第一线程池中分派给目标任务的许可对应的空闲线程处理目标任务。
在一些可行的实施方式中,终端在获取到上述第一信号量参数之后,可以检测该第一信号量参数所指示的许可的数量是否为0,即检测该第一信号量参数的值是否为0。由于第一信号量参数所指示的第一线程池的许可的数量大于或等于0,所以当检测到该第一信号量参数所指示的许可的数量不为0(即大于0)时,说明上述第一线程池中存在空闲线程,则终端可以将该第一线程池中的任一许可分派给上述目标任务,并可以调用该第一线程池中分派给该目标任务的许可所指示的空闲线程处理该目标任务。
S305,当第一信号量参数所指示的许可的数量为0时,检测与第一信号量参数对应的第一借用参数为是或否。
S306,当与第一信号量参数对应的第一借用参数为否时,将目标任务顺序存储在第一线程池的许可等待队列中,以等待第一信号量参数所指示的许可的数量大于零。
S307,当第一信号量参数所指示的许可的数量大于零时,将第一线程池中的许可分派给目标任务,并调用第一线程池中分派给目标任务的许可对应的空闲线程处理目标任务。
在一些可行的实施方式中,当检测到上述第一信号量参数所指示的许可的数量为0时,说明上述第一线程池中不存在空闲线程,则终端可以从预设的信号量数据库中获取与该第一信号量参数对应的第一借用参数,并可以检测与该第一信号量参数对应的第一借用参数为是或否。当检测到该第一信号量参数对应的第一借用参数为否时,说明上述第一线程池不允许借用其他线程池的许可,则终端可以将上述目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量所指示的许可的数量大于0。当该第一信号量所指示的许可的数量大于0时,终端可以将该第一线程池中的任一许可分派给上述目标任务,并可以调用该第一线程池中分派给该目标任务的许可所指示的空闲线程处理该目标任务。其中,一个线程一次可处理一个任务,当任务处理完毕后会自动释放线程,在释放线程之后,信号量参数所指示的许可的数量加一,以便于调用该线程处理下一个任务。
S308,当与第一信号量参数对应的第一借用参数为是时,获取第一信号量参数所属的信号量参数组。
S309,将信号量参数组的N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数。
在一些可行的实施方式中,本申请实施例的步骤S308-步骤S309可参考图1所示实施例的步骤S102-步骤S103的实现方式,在此不再赘述。
S310,轮询M个第三信号量参数中的各个第三信号量参数所指示的许可的数量是否为零。
S311,当轮询到M个第三信号量参数中的各个第三信号量参数所指示的许可的数量均为零时,将目标任务顺序存储在第一线程池的许可等待队列中,以等待第一信号量参数所指示的许可的数量大于零。
S312,当第一信号量参数所指示的许可的数量大于零时,将第一线程池中的许可分派给目标任务,并调用第一线程池中分派给目标任务的许可对应的空闲线程处理目标任务。
在一些可行的实施方式中,终端可以轮询上述M个第三信号量参数中的各个第三信号量参数所指示的许可的数量是否为0,即轮询各个第三信号量参数的值是否为0。当轮询到该M个第三信号量参数中的各个第三信号量参数所指示的许可的数量均为零时,说明各个第三信号量参数匹配的线程池中均不存在空闲线程,则终端可以将上述目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量所指示的许可的数量大于0。当该第一信号量所指示的许可的数量大于0时,终端可以将该第一线程池中的任一许可分派给上述目标任务,并可以调用该第一线程池中分派给该目标任务的许可所指示的空闲线程处理该目标任务。
S313,当轮询到M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将第i个第三信号量参数确定为第四信号量参数。
在一些可行的实施方式中,本申请实施例的步骤S313可参考图1所示实施例的步骤S104的实现方式,在此不再赘述。
S314,将与第四信号量参数匹配的第四线程池中的任一许可分派给目标任务,并将第四信号量参数所指示的许可的数量减一,调用第四线程池中分派给目标任务的许可对应的空闲线程处理目标任务。
S315,当目标任务处理完成时,释放第四线程池中分派给目标任务的许可对应的空闲线程,并将第四信号量参数所指示的许可的数量加一。
在一些可行的实施方式中,终端可以获取上述第四信号量参数匹配的第四线程池,并可以向该第四线程池借用许可。终端可以将该第四线程池中借用到的许可分派给上述目标任务,并可以将该第四信号量参数所指示的许可的数量减一,调用该第四线程池中分派给该目标任务的许可所指示的空闲线程处理该目标任务。当该目标任务处理完成时,终端可以释放该第四线程池中分派给目标任务的许可所指示的空闲线程,并可以将该第四信号量参数所指示的许可的数量加一。
在本申请实施例中,当第一信号量参数所指示的许可的数量不为0时,将第一线程池中的任一许可分派给目标任务,并调用第一线程池中分派给目标任务的许可对应的空闲线程处理目标任务。当第一信号量参数所指示的许可的数量为0时,根据与第一信号量参数对应的第一借用参数,分别采取不同的处理方式,提供了一种更完备的信号量许可调整方法,减少了任务的等待时长,提高了任务的处理效率。
参见图4,是本申请实施例提供的信号量许可的调整装置的一示意性框图。如图4所示,本申请实施例的信号量许可的调整装置包括:
第一获取模块10,用于获取目标任务对应的第一线程池,并获取与该第一线程池匹配的第一信号量参数,该第一信号量参数用于指示该第一线程池的许可的数量,该第一线程池的许可用于指示该第一线程池的空闲线程;
第二获取模块20,用于当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,该信号量参数组中包括该第一信号量参数以及N个第二信号量参数,该第一借用参数用于指示线程池是否允许借用其他线程池的许可,N为大于零的整数;
第一确定模块30,用于将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,该第二借用参数用于指示线程池的许可是否允许被其他线程池借用,M小于或等于N;
第二确定模块40,用于当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将该第i个第三信号量参数确定为第四信号量参数,i为不大于M的正整数;
分派模块50,用于将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务,并调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
在一些可行的实施方式中,该装置还包括增减模块60。该增减模块60,用于在将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务之后,将该第四信号量参数所指示的许可的数量减一;该增减模块60,还用于当该目标任务处理完成时,释放该第四线程池中分派给该目标任务的许可对应的空闲线程,并将该第四信号量参数所指示的许可的数量加一。
在一些可行的实施方式中,该装置还包括存储模块70。该存储模块70,用于当轮询到该M个第三信号量参数中的各个第三信号量参数所指示的许可的数量均为零时,将该目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量参数所指示的许可的数量大于零;上述分派模块50,还用于当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
在一些可行的实施方式中,上述存储模块70,还用于当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为否时,将该目标任务顺序存储在该第一线程池的许可等待队列中,以等待该第一信号量参数所指示的许可的数量大于零;上述分派模块50,还用于当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
在一些可行的实施方式中,上述第一获取模块10包括第一获取单元101和第二获取单元102。该第一获取单元101用于获取目标任务对应的第一线程池;该第二获取单元102用于获取与该第一线程池匹配的第一信号量参数。其中,该第一获取单元101具体用于:接收该目标任务,并获取该目标任务的目标任务类型;从预设的线程池数据库中获取该目标任务类型对应的第一线程池,其中一个任务类型对应一个线程池。
在一些可行的实施方式中,上述分派模块50,还用于当该第一信号量参数所指示的许可的数量大于零时,将该第一线程池中的任一许可分派给该目标任务,并调用该第一线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
具体实现中,上述信号量许可的调整装置可通过上述各个模块执行上述图1或图3所提供的实现方式中各个步骤所提供的实现方式,实现上述各实施例中所实现的功能,具体可参见上述图1或图3所示的方法实施例中各个步骤提供的相应描述,在此不再赘述。
本申请实施例中,信号量许可的调整装置通过获取目标任务对应的第一线程池,并获取与该第一线程池匹配的第一信号量参数,当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将该第i个第三信号量参数确定为第四信号量参数,将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务,并调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。可以通过信号量参数调整线程池的许可,减少任务的等待时长,提高任务的处理效率。
参见图5,是本申请实施例提供的终端的一示意性框图。如图5所示,本申请实施例中的终端可以包括:一个或多个处理器501和存储器502。上述处理器501和存储器502通过总线503连接。存储器502用于存储计算机程序,所述计算机程序包括程序指令,处理器501用于执行存储器502存储的程序指令。上述处理器501被配置用于调用所述程序指令执行:
获取目标任务对应的第一线程池,并获取与该第一线程池匹配的第一信号量参数,该第一信号量参数用于指示该第一线程池的许可的数量,该第一线程池的许可用于指示该第一线程池的空闲线程;
当该第一信号量参数所指示的许可的数量为零且与该第一信号量参数对应的第一借用参数为是时,获取该第一信号量参数所属的信号量参数组,该信号量参数组中包括该第一信号量参数以及N个第二信号量参数,该第一借用参数用于指示线程池是否允许借用其他线程池的许可,N为大于零的整数;
将该N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,该第二借用参数用于指示线程池的许可是否允许被其他线程池借用,M小于或等于N;
当轮询到该M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将该第i个第三信号量参数确定为第四信号量参数,i为不大于M的正整数;
将与该第四信号量参数匹配的第四线程池中的任一许可分派给该目标任务,并调用该第四线程池中分派给该目标任务的许可对应的空闲线程处理该目标任务。
应当理解,在本申请实施例中,所称处理器501可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器502可以包括只读存储器和随机存取存储器,并向处理器501提供指令和数据。存储器502的一部分还可以包括非易失性随机存取存储器。例如,存储器502还可以存储设备类型的信息。
具体实现中,本申请实施例中所描述的处理器501可执行本申请实施例提供的信号量许可的调整方法中所描述的实现方式,也可执行本申请实施例所描述的信号量许可的调整装置的实现方式,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图1或图3所示的信号量许可的调整方法,具体细节请参照图1或图3所示实施例的描述,在此不再赘述。
上述计算机可读存储介质可以是前述任一实施例所述的信号量许可的调整装置或电子设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smartmedia card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请是参照本申请实施例的方法、装置和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程诊疗数据的处理设备的处理器以产生一个机器,使得通过计算机或其他可编程诊疗数据的处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程诊疗数据的处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程诊疗数据的处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种信号量许可的调整方法,其特征在于,包括:
获取目标任务对应的第一线程池,并获取与所述第一线程池匹配的第一信号量参数,所述第一信号量参数用于指示所述第一线程池的许可的数量,所述第一线程池的许可用于指示所述第一线程池的空闲线程;
当所述第一信号量参数所指示的许可的数量为零且与所述第一信号量参数对应的第一借用参数为是时,获取所述第一信号量参数所属的信号量参数组,所述信号量参数组中包括所述第一信号量参数以及N个第二信号量参数,所述第一借用参数用于指示线程池是否允许借用其他线程池的许可,N为大于零的整数;
将所述N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,所述第二借用参数用于指示线程池的许可是否允许被其他线程池借用,M小于或等于N;
当轮询到所述M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将所述第i个第三信号量参数确定为第四信号量参数,i为不大于M的正整数;
将与所述第四信号量参数匹配的第四线程池中的任一许可分派给所述目标任务,并调用所述第四线程池中分派给所述目标任务的许可对应的空闲线程处理所述目标任务。
2.根据权利要求1所述的方法,其特征在于,所述在将与所述第四信号量参数匹配的第四线程池中的任一许可分派给所述目标任务之后,所述方法包括:
将所述第四信号量参数所指示的许可的数量减一;
所述在调用所述第四线程池中分派给所述目标任务的许可对应的空闲线程处理所述目标任务之后,所述方法还包括:
当所述目标任务处理完成时,释放所述第四线程池中分派给所述目标任务的许可对应的空闲线程,并将所述第四信号量参数所指示的许可的数量加一。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
当轮询到所述M个第三信号量参数中的各个第三信号量参数所指示的许可的数量均为零时,将所述目标任务顺序存储在所述第一线程池的许可等待队列中,以等待所述第一信号量参数所指示的许可的数量大于零;
当所述第一信号量参数所指示的许可的数量大于零时,将所述第一线程池中的许可分派给所述目标任务,并调用所述第一线程池中分派给所述目标任务的许可对应的空闲线程处理所述目标任务。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
当所述第一信号量参数所指示的许可的数量为零且与所述第一信号量参数对应的第一借用参数为否时,将所述目标任务顺序存储在所述第一线程池的许可等待队列中,以等待所述第一信号量参数所指示的许可的数量大于零;
当所述第一信号量参数所指示的许可的数量大于零时,将所述第一线程池中的许可分派给所述目标任务,并调用所述第一线程池中分派给所述目标任务的许可对应的空闲线程处理所述目标任务。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述获取目标任务对应的第一线程池,包括:
接收所述目标任务,并获取所述目标任务的目标任务类型;
从预设的线程池数据库中获取所述目标任务类型对应的第一线程池,其中一个任务类型对应一个线程池。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
当所述第一信号量参数所指示的许可的数量大于零时,将所述第一线程池中的任一许可分派给所述目标任务,并调用所述第一线程池中分派给所述目标任务的许可对应的空闲线程处理所述目标任务。
7.一种信号量许可的调整装置,其特征在于,包括:
第一获取模块,用于获取目标任务对应的第一线程池,并获取与所述第一线程池匹配的第一信号量参数,所述第一信号量参数用于指示所述第一线程池的许可的数量,所述第一线程池的许可用于指示所述第一线程池的空闲线程;
第二获取模块,用于当所述第一信号量参数所指示的许可的数量为零且与所述第一信号量参数对应的第一借用参数为是时,获取所述第一信号量参数所属的信号量参数组,所述信号量参数组中包括所述第一信号量参数以及N个第二信号量参数,所述第一借用参数用于指示线程池是否允许借用其他线程池的许可,N为大于零的整数;
第一确定模块,用于将所述N个第二信号量参数中对应的第二借用参数为是的第二信号量参数确定为第三信号量参数,得到M个第三信号量参数,所述第二借用参数用于指示线程池的许可是否允许被其他线程池借用,M小于或等于N;
第二确定模块,用于当轮询到所述M个第三信号量参数中的第i个第三信号量参数所指示的许可的数量大于零时,将所述第i个第三信号量参数确定为第四信号量参数,i为不大于M的正整数;
分派模块,用于将与所述第四信号量参数匹配的第四线程池中的任一许可分派给所述目标任务,并调用所述第四线程池中分派给所述目标任务的许可对应的空闲线程处理所述目标任务。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
增减模块,用于在将与所述第四信号量参数匹配的第四线程池中的任一许可分派给所述目标任务之后,将所述第四信号量参数所指示的许可的数量减一;
所述增减模块,还用于当所述目标任务处理完成时,释放所述第四线程池中分派给所述目标任务的许可对应的空闲线程,并将所述第四信号量参数所指示的许可的数量加一。
9.一种终端,其特征在于,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-6任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910187624.1A CN110008012A (zh) | 2019-03-12 | 2019-03-12 | 一种信号量许可的调整方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910187624.1A CN110008012A (zh) | 2019-03-12 | 2019-03-12 | 一种信号量许可的调整方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110008012A true CN110008012A (zh) | 2019-07-12 |
Family
ID=67166944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910187624.1A Pending CN110008012A (zh) | 2019-03-12 | 2019-03-12 | 一种信号量许可的调整方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110008012A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395054A (zh) * | 2019-08-15 | 2021-02-23 | 杭州海康威视系统技术有限公司 | 一种线程调度方法、装置及系统 |
CN117135074A (zh) * | 2023-08-29 | 2023-11-28 | 铵泰克(北京)科技有限公司 | 基于fpga的tna设备及其通信方法 |
CN118193178A (zh) * | 2024-05-20 | 2024-06-14 | 北京仁科互动网络技术有限公司 | 线程池的拒绝策略执行方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1786917A (zh) * | 2004-12-07 | 2006-06-14 | 国际商业机器公司 | 在多处理器数据处理系统中借入线程作为负载平衡的形式 |
US20120066688A1 (en) * | 2010-09-13 | 2012-03-15 | International Business Machines Corporation | Processor thread load balancing manager |
US20130132970A1 (en) * | 2010-07-13 | 2013-05-23 | Fujitsu Limited | Multithread processing device, multithread processing system, and computer-readable recording medium having stored therein multithread processing program |
CN106155803A (zh) * | 2015-04-07 | 2016-11-23 | 北大方正集团有限公司 | 一种基于信号量的线程池共享方法及系统 |
CN108846632A (zh) * | 2018-05-28 | 2018-11-20 | 浙江口碑网络技术有限公司 | 线程处理方法及装置 |
-
2019
- 2019-03-12 CN CN201910187624.1A patent/CN110008012A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1786917A (zh) * | 2004-12-07 | 2006-06-14 | 国际商业机器公司 | 在多处理器数据处理系统中借入线程作为负载平衡的形式 |
US20130132970A1 (en) * | 2010-07-13 | 2013-05-23 | Fujitsu Limited | Multithread processing device, multithread processing system, and computer-readable recording medium having stored therein multithread processing program |
US20120066688A1 (en) * | 2010-09-13 | 2012-03-15 | International Business Machines Corporation | Processor thread load balancing manager |
CN106155803A (zh) * | 2015-04-07 | 2016-11-23 | 北大方正集团有限公司 | 一种基于信号量的线程池共享方法及系统 |
CN108846632A (zh) * | 2018-05-28 | 2018-11-20 | 浙江口碑网络技术有限公司 | 线程处理方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395054A (zh) * | 2019-08-15 | 2021-02-23 | 杭州海康威视系统技术有限公司 | 一种线程调度方法、装置及系统 |
CN117135074A (zh) * | 2023-08-29 | 2023-11-28 | 铵泰克(北京)科技有限公司 | 基于fpga的tna设备及其通信方法 |
CN117135074B (zh) * | 2023-08-29 | 2024-05-28 | 铵泰克(北京)科技有限公司 | 基于fpga的tna设备及其通信方法 |
CN118193178A (zh) * | 2024-05-20 | 2024-06-14 | 北京仁科互动网络技术有限公司 | 线程池的拒绝策略执行方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008012A (zh) | 一种信号量许可的调整方法及装置 | |
CN110046038A (zh) | 一种基于线程池的任务处理方法及装置 | |
CN109992414A (zh) | 一种基于线程池的任务处理方法及装置 | |
CN109740630A (zh) | 异常数据处理方法及装置 | |
CN109726198A (zh) | 异常数据处理方法及装置 | |
CN109783232A (zh) | 视频数据处理方法、装置及存储介质 | |
CN109766393A (zh) | 异常数据检测方法及装置 | |
CN109684311A (zh) | 异常数据检测方法及装置 | |
CN107767588A (zh) | 一种钞箱状态检测方法及atm设备 | |
CN108564721B (zh) | 一种计费方法、服务器及智能设备 | |
CN110032434A (zh) | 一种信号量许可的调整方法及装置 | |
CN109684091B (zh) | 一种任务处理方法及装置 | |
CN109597745A (zh) | 异常数据处理方法及装置 | |
CN109130542A (zh) | 通过黑标传感器检测票据打印状态的方法及装置 | |
CN107610367B (zh) | 一种票据处理装置、方法及自助金融设备、终端设备 | |
CN105045652B (zh) | 一种多终端共同处理多并行线程程序的方法和处理系统 | |
CN110084694A (zh) | 一种基于数据处理的订单分配方法及相关设备 | |
CN104915258B (zh) | 分布式任务调度的方法和装置 | |
CN108874676A (zh) | 测试资源的分配方法及装置 | |
CN108710538A (zh) | 一种线程配置方法、计算机可读存储介质及终端设备 | |
CN108279641A (zh) | 一种cnc调机方法及其系统 | |
CN103412091A (zh) | pH值测量方法及装置 | |
CN101393516A (zh) | 一种实现移动通信终端计算器四则运算法则的方法和装置 | |
CN108380673A (zh) | 确定粗轧减宽策略的方法、系统及终端设备 | |
CN109741047A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190712 |