[发明专利]一种获取任务进度的方法、终端设备及存储介质在审
申请号: | 201810695956.6 | 申请日: | 2018-06-29 |
公开(公告)号: | CN109032775A | 公开(公告)日: | 2018-12-18 |
发明(设计)人: | 张振铎;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/46 |
代理公司: | 武汉河山金堂专利事务所(普通合伙) 42212 | 代理人: | 胡清堂;陈懿 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 子线程 任务进度 任务执行进度 存储介质 终端设备 任务执行成功 任务执行 线程执行 数据处理 主线程 线程 预设 进度 创建 安全 | ||
本发明公开了一种获取任务进度的方法、终端设备及存储介质,适用于获取线程进度。本发明提供的方法包括:主线程接收到数据处理任务后,创建预设数量的子线程,并设定CountDownLatch的初始值为子线程的数量;在每个子线程中定义当前子线程对应的任务执行方法和获取当前子线程任务执行进度的方法;当子线程执行任务对应的每个分任务执行成功或错误时,将所述CountDownLatch值减一,并计算所述子线程的任务执行进度。本发明中通过CountDownLatch来对任务的执行状况计数,能够保障线程安全,使得计数的更准确,进而得到的任务进度信息也更加可靠。
技术领域
本发明涉及计算机领域,尤其涉及一种获取任务进度的方法、终端设备及存储介质。
背景技术
计算机进行任务处理时,会创建大量线程进行异步的计算。例如,要统计一些主播的信息,程序会根据主播的ID或UID,开启多个线程分别计算对应的类别的数据。这种并行的计算方法能提高计算效率,加快响应。但多个线程计算时,只能得到总的计算结果,对于每个线程执行状态并不了解。
目前,常用的方法是直接在每个线程的run()函数中定义任务状态获取方法,然后通过计数对每个线程执行进度监控。这种通过统计各任务是否执行完毕的方法,在线程并发时,由于存在线程安全问题,致使获取到的任务进度信息准确性较低。
发明内容
有鉴于此,本发明实施例提供了一种获取任务进度的方法、终端设备及存储介质,以解决统计任务进度时存在线程安全的问题。
本发明实施例的第一方面,提供了一种数据同步方法,包括:
主线程接收到数据处理任务后,创建预设数量的子线程,并设定CountDownLatch的初始值为子线程的数量;
在所述创建的每个子线程中定义当前子线程对应的任务执行方法和获取当前子线程任务执行进度的方法;
当子线程执行任务成功或异常时,将所述CountDownLatch值减一,并根据当前所述CountDownLatch值,计算所述子线程当前任务的完成进度。
本发明实施例的第二方面,提供了一种终端设备,包括:
创建模块:用于主线程接收到数据处理任务后,创建预设数量的子线程,并设定CountDownLatch的初始值为子线程的数量;
定义模块:用于在所述创建的每个子线程中定义当前子线程对应的任务执行方法和获取当前子线程任务执行进度的方法;
计算模块:用于当子线程执行任务成功或异常时,将所述CountDownLatch值减一,并根据当前所述CountDownLatch值,计算所述子线程当前任务的完成进度。
本发明实施例的第三方面,提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例第一方面所述方法的步骤。
本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面提供的所述方法的步骤。
本发明实施例的第五方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被一个或多个处理器执行时实现本发明实施例第一方面提供的所述方法的步骤。
本发明实施例中,通过CountDownLatch来对子线程中任务的执行状况计数,进而统计已完成执行的任务在分配的任务量中的占比,确定任务执行进度。这种通过CountDownLatch获得线程封闭锁的方式,能够保障线程安全,使得计数的更准确,进而得到的任务进度信息也更加可靠。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810695956.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:应用程序恢复方法与装置
- 下一篇:基于互相关函数的云计算任务调度方法及系统