【技术实现步骤摘要】
线程分配方法、装置、计算机设备和存储介质
本申请涉及互联网
,特别是涉及一种线程分配方法、装置、计算机设备和存储介质。
技术介绍
通过启用线程池中的多线程来处理任务,是目前常用的一种提高系统任务处理效率的方案。合理利用线程池的线程,除了提高系统处理任务的响应效率以外,还可以通过重复利用已创建的线程来降低线程创建和销毁过程中所带来的系统资源消费。通过对线程池线程的利用管理,一方面可以确保线程不会无限制创建,另一方面可以对线程进行统一的调度和监控。线程池中线程共享和队列按照FIFO(FirstInputFirstOutput,先进先出)的原则处理数据,然而这种处理方式容易使得不同任务之间产生相互影响。如图1所示,图1为线程池结构图。图2为基于图1的任务启用线程过程的流程简图。线程池中的线程和队列都是所有任务共享的。因此,线程池中采用图2所示的处理方式,同时采用多线程处理多个任务时,容易造成任务处理之间的相互干扰。例如:任务A处理时间长,并发量大时会长期占用线程池的线程资源,从而导致其它任务因无可用线程无法正常处理。 ...
【技术保护点】
1.一种基于任务处理的线程分配方法,所述方法包括:/n获取目标任务的线程阈值,所述线程阈值为处理所述目标任务对应的任务数据的最大线程数量;/n获取处理缓存队列中任务数据的线程的数量值,所述缓存队列用于存储所述目标任务的任务处理请求调用的任务数据;/n根据所述线程阈值以及所述数量值,控制对所述缓存队列的线程分配。/n
【技术特征摘要】
1.一种基于任务处理的线程分配方法,所述方法包括:
获取目标任务的线程阈值,所述线程阈值为处理所述目标任务对应的任务数据的最大线程数量;
获取处理缓存队列中任务数据的线程的数量值,所述缓存队列用于存储所述目标任务的任务处理请求调用的任务数据;
根据所述线程阈值以及所述数量值,控制对所述缓存队列的线程分配。
2.根据权利要求1所述的方法,其特征在于,所述目标任务为多个,所述获取目标任务的线程阈值,包括:获取各所述目标任务的线程阈值;
所述获取处理缓存队列中任务数据的线程的数量值,包括:获取处理各所述目标任务的缓存队列中任务数据的线程的数量值;
所述根据所述线程阈值以及所述数量值,控制对所述缓存队列的线程分配,包括:
根据各所述目标任务的线程阈值以及各所述目标任务的缓存队列对应的线程的数量值,分别控制对各所述目标任务的缓存队列的线程分配。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在第一预设时间段内,多个所述目标任务中任一目标任务的缓存队列的任务数据大于预设任务数据量时,提高所述任一目标任务对应的线程阈值,并降低多个所述目标任务中其他目标任务对应的线程阈值。
4.根据权利要求1所述的方法,其特征在于,所述根据所述线程阈值以及所述数量值,控制对所述缓存队列的线程分配,包括:
当所述数量值小于所述线程阈值时,向所述缓存队列分配线程;
当所述数量值等于所述线程阈值时,停止向所述缓存队列分配线程。
5.根据权利要求4所述的方法,其特征在...
【专利技术属性】
技术研发人员:刘瑞涛,胥磊,
申请(专利权)人:苏宁云计算有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。