CN110362394B - 任务处理方法及装置、存储介质、电子装置 - Google Patents

任务处理方法及装置、存储介质、电子装置 Download PDF

Info

Publication number
CN110362394B
CN110362394B CN201910662583.7A CN201910662583A CN110362394B CN 110362394 B CN110362394 B CN 110362394B CN 201910662583 A CN201910662583 A CN 201910662583A CN 110362394 B CN110362394 B CN 110362394B
Authority
CN
China
Prior art keywords
task
queue
parent
tasks
structural relationship
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
Application number
CN201910662583.7A
Other languages
English (en)
Other versions
CN110362394A (zh
Inventor
堵新政
张毅然
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Mininglamp Software System Co ltd
Original Assignee
Beijing Mininglamp Software System Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Mininglamp Software System Co ltd filed Critical Beijing Mininglamp Software System Co ltd
Priority to CN201910662583.7A priority Critical patent/CN110362394B/zh
Publication of CN110362394A publication Critical patent/CN110362394A/zh
Application granted granted Critical
Publication of CN110362394B publication Critical patent/CN110362394B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling 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

本发明提供了一种任务处理方法及装置、存储介质、电子装置,其中,上述方法包括:对待处理的任务建立有向无环图DAG的结构关系;根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务,采用上述技术方案,解决了相关技术中,对任务队列中的任务进行管理操作时,容易出现误操作进行无法有效管理任务队列。

Description

任务处理方法及装置、存储介质、电子装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种任务处理方法及装置、存储介质、电子装置。
背景技术
任务队列是管理和控制任务执行的队列。任务按照队列中的顺序先后执行,对于有依赖关系的DAG任务,必须父任务执行成功后,子任务才能执行。队列管理任务的操作有添加、移除、编辑、重运行等。这些操作一般是对单个任务而言的,虽然也可以批量操作,但对具有依赖关系的任务,容易出现误删、少删、少加、误加等情况,很难做到高效、正确地管理任务的目的。
针对相关技术中,对任务队列中的任务进行管理操作时,容易出现误操作进行无法有效管理任务队列等问题,目前尚未存在有效的解决方案。
发明内容
本发明实施例提供了一种任务处理方法及装置、存储介质、电子装置,以解决相关技术中对任务队列中的任务进行管理操作时,容易出现误操作进行无法有效管理任务队列。
根据本发明的一个实施例,提供了一种任务处理方法,包括:对待处理的任务建立有向无环图DAG的结构关系;根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务。
在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:在对所述任务队列中的任务执行添加任务操作的情况下,根据所述结构关系确定待添加的任务是否存在父任务;如果存在,则将所述待添加的任务和所述待添加的任务的父任务添加到所述任务队列中;如果不存在,则将所述待添加的任务添加到所述任务队列中。
在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:在对所述任务队列中的任务执行移除任务操作的情况下,根据所述结构关系确定待移除的任务是否存在父任务和子任务;在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务;在所述待移除的任务存在子任务的情况下,确定所述子任务的父任务是否大于1,在所述子任务的父任务大于1个时,禁止从所述任务队列中移除所述子任务。
在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:在对所述任务队列中的任务执行重运行任务操作的情况下,更改所述待重运行任务的执行状态,根据所述结构关系调整所述任务队列中任务的执行顺序以重运行所述待重运行的任务。
根据本发明的另一个实施例,还提供了一种任务处理装置,包括:建立模块,用于对待处理的任务建立有向无环图DAG的结构关系;处理模块,用于根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务。
在本发明实施例中,所述处理模块,还用于在对所述任务队列中的任务执行添加任务操作的情况下,根据所述结构关系确定待添加的任务是否存在父任务;如果存在,则将所述待添加的任务和所述待添加的任务的父任务添加到所述任务队列中;如果不存在,则将所述待添加的任务添加到所述任务队列中。
在本发明实施例中,所述处理模块,还用于在对所述任务队列中的任务执行移除任务操作的情况下,根据所述结构关系确定待移除的任务是否存在父任务和子任务;在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务;在所述待移除的任务存在子任务的情况下,确定所述子任务的父任务是否大于1,在所述子任务的父任务大于1个时,禁止从所述任务队列中移除所述子任务。
在本发明实施例中,所述处理模块,还用于在对所述任务队列中的任务执行重运行任务操作的情况下,更改所述待重运行任务的执行状态,根据所述结构关系调整所述任务队列中任务的执行顺序以重运行所述待重运行的任务。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,对待处理的任务建立有向无环图DAG的结构关系;根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务,采用上述技术方案,解决了相关技术中,对任务队列中的任务进行管理操作时,容易出现误操作进行无法有效管理任务队列等问题,提高了任务队列中的任务的管理效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的任务处理方法的流程图;
图2是根据本发明实施例的一种可选的任务处理装置的结构框图;
图3是根据本发明实施例的一种可选的任务处理装置的另一结构框图;
图4是根据本发明实施例的一种可选的任务示意图;
图5是根据本发明实施例的一种可选的任务队列示意图;
图6是根据本发明实施例的一种可选的添加任务的任务队列示意图;
图7是根据本发明实施例的一种可选的移除任务的任务队列示意图;
图8为根据本发明优选实施例的任务管理方法的流程示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
图1是根据本发明实施例的一种可选的任务处理方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,对待处理的任务建立有向无环图DAG的结构关系。
步骤S104,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务。
通过上述技术方案,对待处理的任务建立有向无环图DAG的结构关系;根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务,采用上述技术方案,解决了相关技术中,对任务队列中的任务进行管理操作时,容易出现误操作进行无法有效管理任务队列等问题,提高了任务队列中的任务的管理效率。
在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:在对所述任务队列中的任务执行添加任务操作的情况下,根据所述结构关系确定待添加的任务是否存在父任务;如果存在,则将所述待添加的任务和所述待添加的任务的父任务添加到所述任务队列中;如果不存在,则将所述待添加的任务添加到所述任务队列中。
在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:在对所述任务队列中的任务执行移除任务操作的情况下,根据所述结构关系确定待移除的任务是否存在父任务和子任务;在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务;在所述待移除的任务存在子任务的情况下,确定所述子任务的父任务是否大于1,在所述子任务的父任务大于1个时,禁止从所述任务队列中移除所述子任务。
其中,在所述待移除的任务存在父任务的情况下,并从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务之后,还可以判断父任务是否具备父任务,如果父任务还具备父任务,那么就将父任务对应的父任务继续移除。
在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:在对所述任务队列中的任务执行重运行任务操作的情况下,更改所述待重运行任务的执行状态,根据所述结构关系调整所述任务队列中任务的执行顺序以重运行所述待重运行的任务。
在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务之后,所述方法包括:对执行了以下至少之一操作:添加任务、移除任务、重运行任务后的任务队列中的任务进行重新排列。
也就是说,通过上述对于待处理的任务,根据DAG关系中任务的依赖关系来维护任务队列,进而可以做到高效、正确地管理任务。
可选的,以下结合本发明实施例的一个可选示例对上述任务管理过程进行解释说明,但不用于限定本发明实施例的技术方案。
1)任务队列中添加任务时,如果待添加的任务存在父任务,就将待添加的任务的父任务也同时加到任务队列中;
2)移除任务时,将与待移除的任务关联的父子任务从任务队列中移除;
需要说明的是,任务在任务队列中添加、移除、重运行后都会根据任务的DAG对任务队列重新排序,保证任务的执行顺序和任务的DAG一致。
基于上述介绍的本发明实施例的技术方案,具体地,基于DAG的任务队列管理方法的实现方案步骤如下:
步骤1,创建任务队列管理类TaskQueueManager,增加任务的添加(add)、移除(remove)、重运行(rerun)、重新排序(resort)方法;
步骤2,实现任务添加逻辑:add方法接收一个任务类型参数(Task),将Task加到任务队列TaskQueue中;再根据任务的DAG判断待添加的任务是否有父任务,如果有就继续调用add方法将父任务加到队列中;通过递归调用add方法,完成任务的添加;任务添加完成后,要调用resort方法对任务队列重新排序;
实现任务移除逻辑:remove方法接收一个任务类型参数(Task),将Task从任务队列TaskQueue中移除;再根据DAG结构,判断待移除的任务是否有父任务或者子任务,如果有父任务,则递归调用removeParent方法,将父任务从队列中移除;如果有子任务,判断子任务的父任务数是否大于1,如果大于1则不移除该子任务,否则递归调用removeChildren方法将子任务从任务队列中移除;任务移除完成后,要调用resort方法对任务队列重新排序;
实现任务重运行逻辑:rerun方法接收一个任务类型参数(Task),更改任务的状态,然后调用resort方法对任务队列重新排序;
实现任务队列重新排序逻辑:resort方法接收一个任务队列类型参数(TaskQueue),队列中有DAG任务Task;根据任务DAG结构,重新调整队列中的任务顺序。
需要说明的是,任务的添加、移除、重运行都会调用重新排序(resort)方法,保证任务的执行顺序和任务DAG一致。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种任务处理装置装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图2是根据本发明实施例的一种可选的任务处理装置的结构框图,如图2所示,该装置包括:
建立模块20,用于对待处理的任务建立有向无环图DAG的结构关系;
处理模块22,用于根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务。
通过上述技术方案,对待处理的任务建立有向无环图DAG的结构关系;根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务,采用上述技术方案,解决了相关技术中,对任务队列中的任务进行管理操作时,容易出现误操作进行无法有效管理任务队列等问题,提高了任务队列中的任务的管理效率。
在本发明实施例中,所述处理模块22,还用于在对所述任务队列中的任务执行添加任务操作的情况下,根据所述结构关系确定待添加的任务是否存在父任务;如果存在,则将所述待添加的任务和所述待添加的任务的父任务添加到所述任务队列中;如果不存在,则将所述待添加的任务添加到所述任务队列中。
在本发明实施例中,所述处理模块22,还用于在对所述任务队列中的任务执行移除任务操作的情况下,根据所述结构关系确定待移除的任务是否存在父任务和子任务;在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务;在所述待移除的任务存在子任务的情况下,确定所述子任务的父任务是否大于1,在所述子任务的父任务大于1个时,禁止从所述任务队列中移除所述子任务。
其中,在所述待移除的任务存在父任务的情况下,并从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务之后,还可以判断父任务是否具备父任务,如果父任务还具备父任务,那么就将父任务对应的父任务继续移除。
在本发明实施例中,所述处理模块22,还用于在对所述任务队列中的任务执行重运行任务操作的情况下,更改所述待重运行任务的执行状态,根据所述结构关系调整所述任务队列中任务的执行顺序以重运行所述待重运行的任务。
图3是根据本发明实施例的一种可选的任务处理装置的另一结构框图,如图3所示,该装置还包括:
重新排列模块24,用于在本发明实施例中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务之后,所述方法包括:对执行了以下至少之一操作:添加任务、移除任务、重运行任务后的任务队列中的任务进行重新排列。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
为了更好的理解上述任务的管理流程,以下结合优选实施例对上述技术方案进行解释说明,但不用于限定本发明实施例的技术方案。
如图4所示,假设有任务Task-1、Task-2、Task-3、Task-4、Task-5、Task-6,任务队列TaskQueue-1,如图5所示,TaskQueue-1中有Task-1、Task-2、Task-5、Task-6,四个任务。
添加任务的执行过程
1)在将Task-4加到队列TaskQueue-1中,调用add方法,由于Task-4存在父任务Task-3,则将Task-3、Task-4一起加到TaskQueue-1中;
2)任务添加成功后,由于任务队列发生变化,需要调用重新排序方法resort,对队列任务重新排序,根据任务DAG的依赖关系,调整后的队列如图6所示。
在执行了上述添加任务的操作后,移除任务的执行过程如下:
1)将Task-4从队列TaskQueue-1中移除,调用remove方法移除Task-4,由于Task-4存在父任务Task-3,则继续调用remove方法移除Task-3;由于Task-4存在子任务Task-5,根据DAG结构,Task-5的父任务数大于1,不移除子任务Task-5;
2)任务移除后,由于任务队列发生变化,需要调用重新排序方法resort,对队列任务重新排序,根据任务DAG的依赖关系,调整后的队列如图7所示。
重运行的执行流程
假设Task-3由于某种原因,导致执行失败,Task-3就会被置于队列的最后;通过调用重运行方法,更改其状态,然后调用重新排序方法resort,任务队列将重新调整为该流程中的顺序。
图8为根据本发明优选实施例的任务管理方法的流程示意图,如图8所示,包括:
步骤S801,创建空的任务队列TaskQueue,根据任务操作类型,如果是添加任务,则转到步骤S802,如果是移除任务,则转到步骤S803,如果是重运行任务,则转到步骤S807;
步骤S802,将任务添加到任务,判断该任务是否存在父任务,如果存在,则转到步骤S802,递归添加父任务,否则转到步骤S808;
步骤S803,将任务从任务队列中移除,同时判断是否存在父任务或子任务,如果存在父任务,则转到步骤S804,如果存在子任务,则转到步骤S806,如果不存在,则转到步骤S808;
步骤S804,将父任务从任务队列移除,同时判断父任务是否还存在父任务,如果存在则转到步骤S804,递归移除父任务,否则转到步骤S808;
步骤S805,获取子任务的父任务数m,判断m是否大于1,如果是,则转到步骤S808,否则转到步骤S806;
步骤S806,将子任务从队列中移除,同时判断子任务是否还存在子任务,如果是则转到步骤S806,否则转到步骤S808;
步骤S807,重新运行任务,转到步骤S808;
步骤S808,对任务队列根据DAG结构重新排序,结束。
如果有新的任务操作,重复步骤S802-步骤S808。
综上,上述技术方案使得任务队列的管理更加快速、高效,同时还能保证任务操作的正确性,对于任务依赖关系复杂和任务量很多的情况,更能体现该方法的高效。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,对待处理的任务建立有向无环图DAG的结构关系;
S2,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,对待处理的任务建立有向无环图DAG的结构关系;
S2,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种任务处理方法,其特征在于,包括:
对待处理的任务建立有向无环图DAG的结构关系;
根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务;
其中,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:
在对所述任务队列中的任务执行移除任务操作的情况下,根据所述结构关系确定待移除的任务是否存在父任务和子任务;
在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务;
在所述待移除的任务存在子任务的情况下,确定所述子任务的父任务是否大于1,在所述子任务的父任务大于1个时,禁止从所述任务队列中移除所述子任务;
其中,在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务之后,还包括:
判断所述待移除的任务的父任务是否存在父任务;
在所述待移除的任务的父任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务的父任务的父任务。
2.根据权利要求1所述的方法,其特征在于,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:
在对所述任务队列中的任务执行添加任务操作的情况下,根据所述结构关系确定待添加的任务是否存在父任务;
如果存在,则将所述待添加的任务和所述待添加的任务的父任务添加到所述任务队列中;
如果不存在,则将所述待添加的任务添加到所述任务队列中。
3.根据权利要求1所述的方法,其特征在于,根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,包括:
在对所述任务队列中的任务执行重运行任务操作的情况下,更改所述待重运行任务的执行状态,根据所述结构关系调整所述任务队列中任务的执行顺序以重运行所述待重运行的任务。
4.一种任务处理装置,其特征在于,包括:
建立模块,用于对待处理的任务建立有向无环图DAG的结构关系;
处理模块,用于根据所述结构关系对任务队列中的任务进行以下至少之一操作:添加任务、移除任务、重运行任务,所述待处理的任务包括:所述任务队列中的任务;
其中,所述处理模块还用于在对所述任务队列中的任务执行移除任务操作的情况下,根据所述结构关系确定待移除的任务是否存在父任务和子任务;在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务;在所述待移除的任务存在子任务的情况下,确定所述子任务的父任务是否大于1,在所述子任务的父任务大于1个时,禁止从所述任务队列中移除所述子任务;
其中,所述处理模块还用于在所述待移除的任务存在父任务的情况下,从所述任务队列中移除所述待移除的任务和所述待移除的任务的父任务之后,判断所述待移除的任务的父任务是否存在父任务;在所述待移除的任务的父任务存在父任务的情况下,从所述任务队列中移除所述待移除任务的父任务的父任务。
5.根据权利要求4所述的装置,其特征在于,所述处理模块,还用于在对所述任务队列中的任务执行添加任务操作的情况下,根据所述结构关系确定待添加的任务是否存在父任务;如果存在,则将所述待添加的任务和所述待添加的任务的父任务添加到所述任务队列中;如果不存在,则将所述待添加的任务添加到所述任务队列中。
6.根据权利要求4所述的装置,其特征在于,所述处理模块,还用于在对所述任务队列中的任务执行重运行任务操作的情况下,更改所述待重运行任务的执行状态,根据所述结构关系调整所述任务队列中任务的执行顺序以重运行所述待重运行的任务。
7.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至3中任一项中所述的方法。
8.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至3任一项中所述的方法。
CN201910662583.7A 2019-07-22 2019-07-22 任务处理方法及装置、存储介质、电子装置 Active CN110362394B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910662583.7A CN110362394B (zh) 2019-07-22 2019-07-22 任务处理方法及装置、存储介质、电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910662583.7A CN110362394B (zh) 2019-07-22 2019-07-22 任务处理方法及装置、存储介质、电子装置

Publications (2)

Publication Number Publication Date
CN110362394A CN110362394A (zh) 2019-10-22
CN110362394B true CN110362394B (zh) 2022-04-26

Family

ID=68220535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910662583.7A Active CN110362394B (zh) 2019-07-22 2019-07-22 任务处理方法及装置、存储介质、电子装置

Country Status (1)

Country Link
CN (1) CN110362394B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112948068B (zh) * 2020-09-16 2024-03-12 深圳市明源云科技有限公司 任务调度方法、装置及电子设备
CN112612597B (zh) * 2020-12-30 2023-11-03 中国农业银行股份有限公司 一种生成线性任务队列方法及装置
CN112463346B (zh) * 2020-12-31 2021-10-15 哈尔滨工业大学(深圳) 一种基于划分调度的dag任务的启发式处理器划分方法、系统及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104915251A (zh) * 2015-06-05 2015-09-16 北京京东尚科信息技术有限公司 任务调度方法及装置
CN106257893A (zh) * 2016-08-11 2016-12-28 浪潮(北京)电子信息产业有限公司 存储服务器任务响应方法、客户端、服务器及系统
CN107633080A (zh) * 2017-09-25 2018-01-26 联想(北京)有限公司 一种用户任务处理方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3870144B2 (ja) * 2002-09-27 2007-01-17 インターナショナル・ビジネス・マシーンズ・コーポレーション 木構造文書送受システム、木構造文書送信装置、木構造文書受信装置、木構造文書送受方法、木構造文書送信方法、木構造文書受信方法、及びプログラム
KR20120055089A (ko) * 2010-11-23 2012-05-31 이화여자대학교 산학협력단 부하분산을 이용한 병렬형 충돌검사 방법과 병렬형 거리계산 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104915251A (zh) * 2015-06-05 2015-09-16 北京京东尚科信息技术有限公司 任务调度方法及装置
CN106257893A (zh) * 2016-08-11 2016-12-28 浪潮(北京)电子信息产业有限公司 存储服务器任务响应方法、客户端、服务器及系统
CN107633080A (zh) * 2017-09-25 2018-01-26 联想(北京)有限公司 一种用户任务处理方法及装置

Also Published As

Publication number Publication date
CN110362394A (zh) 2019-10-22

Similar Documents

Publication Publication Date Title
CN110362394B (zh) 任务处理方法及装置、存储介质、电子装置
CA2767667C (en) Fault tolerant batch processing
US20170153927A1 (en) System and method for runtime grouping of processing elements in streaming applications
EP3674990A1 (en) Output method and apparatus for multiple neural network, server and computer readable storage medium
US20170353541A1 (en) Non-transitory recording medium, information processing method, management node and information processing system
CN111897633A (zh) 一种任务处理的方法和装置
CN102937904A (zh) 一种多节点固件升级方法和装置
CN110162344B (zh) 一种隔离限流的方法、装置、计算机设备及可读存储介质
CN112596871A (zh) 业务处理方法和装置
CN111158800B (zh) 基于映射关系构建任务dag的方法及装置
CN111831408A (zh) 异步任务处理方法、装置、电子设备及介质
CN110413207B (zh) 降低存储系统的数据恢复时间的方法、设备和程序产品
CN111131024A (zh) 聚合链路的处理方法及装置
CN115080231A (zh) 任务的处理方法及装置
CN110109747B (zh) 基于Apache Spark的数据交换方法及系统、服务器
CN113127289B (zh) 一种基于yarn集群的资源管理方法、计算机设备和存储介质
CN110908821A (zh) 任务失败管理的方法、装置、设备和存储介质
CN109542598A (zh) 定时任务管理方法及装置
CN109542588B (zh) 一种用于在云环境下管理虚拟设备的方法和装置
CN112766768B (zh) 合同流程管理方法、装置、电子设备以及可读存储介质
CN108206745B (zh) 业务的操作方法、装置及云计算系统
KR20120118271A (ko) 가상머신 이동 대상 선택 방법
CN111131361B (zh) 集群查询系统中连接节点的处理方法及装置
CN108664393B (zh) 一种多服务器资源池兼容性测试与修正方法
JP2017068877A (ja) ジョブネット管理装置及びプログラム

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