任务实现装置和方法、以及应用_4

文档序号:8258164阅读:来源:国知局
何一项所述的装置,还包括:
[0082]任务结果管理模块,其适于存放所获得的任务结果。
[0083]A5、根据A4所述的装置,所述获取模块包括:
[0084]任务结果查询单元,其适于在所述任务结果管理模块中查询所述预定任务的任务结果;以及
[0085]获取单元,其适于在所述任务结果查询单元查询到所述任务结果时,从所述任务结果管理模块获得所述任务结果。
[0086]A6、根据A3所述的装置,还包括:
[0087]设置模块,其适于设置所述执行所述预定任务的请求的状态,当所述请求产生时,将所述请求的状态设置为可被访问的状态,当所述请求的预定任务执行完毕并已获得任务结果时,将所述请求的状态设置为不可被访问的状态。
[0088]A7、根据A1-A6中任何一项所述装置,其中,
[0089]所述主程序是游戏主程序;
[0090]所述任务执行模块是游戏截图执行模块,其在OpenGL线程上执行。
[0091]本发明还公开了 B1、一种任务实现方法,所述任务是主程序运行过程中需要执行的一个或者多个任务,所述主程序在主线程上运行,所述任务在一个或多个次线程上执行,所述方法包括:
[0092]所述主程序调用在所述次线程上运行的任务执行程序,所述任务执行程序执行一预定任务;
[0093]启动运行所述任务执行程序的次线程;
[0094]所述任务执行程序运行而产生执行结果;
[0095]所述主程序获取所述执行结果。
[0096]B2、根据BI所述的方法,其中,所述任务执行程序运行而产生执行结果的步骤包括:
[0097]查询是否存在来自主线程发出的执行所述预定任务的请求,
[0098]在查询到执行所述预定任务的请求时执行所述预定任务并产生所述任务结果。
[0099]B3、根据B2所述的方法,其中,
[0100]所述主程序调用在所述次线程上运行的任务执行程序的步骤为:所述主程序发送调用任务执行程序的请求到请求管理中心;
[0101]所述查询来自主线程发出的执行所述预定任务的请求的步骤为:查询所述请求管理中心中是否存在执行所述预定任务的请求。
[0102]B4、根据B1-B3中任何一项所述的方法,其中,
[0103]在所述任务执行程序运行而产生执行结果之后还包括步骤:
[0104]将所述执行结果存放在任务结果管理中心;
[0105]其中,所述主程序获取所述执行结果的步骤为:所述主程序从所述任务管理中心获取所述执行结果。
[0106]B5、根据B4所述的方法,其中,所述主程序从所述任务管理中心获取所述执行结果的步骤包括:
[0107]在所述任务结果管理中心中查询所述预定任务的任务结果;以及
[0108]在查询到所述任务结果时,从所述任务结果管理中心获得所述任务结果。
[0109]B6、根据B1-B5中任何一项所述的方法,其中所述应用将所述任务结果发送至所述网络应用平台的步骤包括:
[0110]在所述主程序发送调用任务执行程序的请求到请求管理中心的步骤之后还包括:
[0111]将所述请求的状态设置为可被访问的状态;
[0112]在所述任务执行程序运行而产生执行结果的步骤之后还包括:
[0113]将所述请求的状态设置为不可被访问的状态。
[0114]本发明还公开了 Cl、一种应用,其主程序在主线程上运行,所述应用在运行时执行一个或者多个任务,所述任务在一个或多个次线程上执行,所述应用包括权利要求1-7中任何一项所述的任务实现装置。
[0115]C2、根据Cl所述的应用,其为游戏,所述任务包括游戏主程序运行时要执行的游戏截图,所述游戏截图任务在OpenGL线程上执行。
【主权项】
1.一种任务实现装置,所述任务是主程序运行过程中需要执行的一个或者多个任务,所述主程序在主线程上运行,所述任务在一个或多个次线程上执行,所述装置包括: 任务执行模块,其适于在所述次线程上运行以实现预定任务,产生任务结果; 调用模块,其适于主程序在主线程上运行时调用所述任务执行模块; 启动模块,其适于启动运行所述任务执行模块的次线程;以及 获取模块,其适于使所述主程序获得所述任务结果。
2.根据权利要求1所述的装置,其中,所述任务执行模块包括请求查询单元和执行单元, 所述请求查询单元适于查询来自主线程发出的执行所述预定任务的请求, 所述执行单元适于在所述请求查询单元查询到执行所述预定任务的请求的情况下执行所述预定任务并产生所述任务结果。
3.根据权利要求1或2所述的装置,还包括: 请求管理模块,其适于存放所述主线程和所述次线程发出的请求, 其中,所述调用模块发送执行所述预定任务的请求存放在所述请求管理模块中。
4.根据权利要求1-3中任何一项所述的装置,还包括: 任务结果管理模块,其适于存放所获得的任务结果。
5.—种任务实现方法,所述任务是主程序运行过程中需要执行的一个或者多个任务,所述主程序在主线程上运行,所述任务在一个或多个次线程上执行,所述方法包括: 所述主程序调用在所述次线程上运行的任务执行程序,所述任务执行程序执行一预定任务; 启动运行所述任务执行程序的次线程; 所述任务执行程序运行而产生执行结果; 所述主程序获取所述执行结果。
6.根据权利要求5所述的方法,其中,所述任务执行程序运行而产生执行结果的步骤包括: 查询是否存在来自主线程发出的执行所述预定任务的请求, 在查询到执行所述预定任务的请求时执行所述预定任务并产生所述任务结果。
7.根据权利要求6所述的方法,其中, 所述主程序调用在所述次线程上运行的任务执行程序的步骤为:所述主程序发送调用任务执行程序的请求到请求管理中心; 所述查询来自主线程发出的执行所述预定任务的请求的步骤为:查询所述请求管理中心中是否存在执行所述预定任务的请求。
8.根据权利要求5-7中任何一项所述的方法,其中, 在所述任务执行程序运行而产生执行结果之后还包括步骤: 将所述执行结果存放在任务结果管理中心; 其中,所述主程序获取所述执行结果的步骤为:所述主程序从所述任务管理中心获取所述执行结果。
9.一种应用,其主程序在主线程上运行,所述应用在运行时执行一个或者多个任务,所述任务在一个或多个次线程上执行,所述应用包括权利要求1-7中任何一项所述的任务实现装置。
10.根据权利要求9所述的应用,其为游戏,所述任务包括游戏主程序运行时要执行的游戏截图,所述游戏截图任务在OpenGL线程上执行。
【专利摘要】本发明公开了一种任务实现装置,所述任务是主程序运行过程中需要执行的一个或者多个任务,所述主程序在主线程上运行,所述任务在一个或多个次线程上执行,所述装置包括:任务执行模块,其适于在所述次线程上运行以实现预定任务,产生任务结果;调用模块,其适于主程序在主线程上运行时调用所述任务执行模块;启动模块,其适于启动运行所述任务执行模块的次线程;以及获取模块,其适于使所述主程序获得所述任务结果。另外,本发明还提供一种任务实现方法以及使用所述任务实现装置的应用。利用本发明,一方面可以减少主程序本身的负荷,另一方面操作更灵活,实现更容易,并且可以使程序兼容性更好。
【IPC分类】G06F9-48
【公开号】CN104572284
【申请号】CN201510009759
【发明人】瞿化飞
【申请人】盟游(北京)科技有限公司
【公开日】2015年4月29日
【申请日】2015年1月8日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1