[发明专利]一种创建并发线程的方法、装置及计算机可读存储介质有效
申请号: | 201710723844.2 | 申请日: | 2017-08-22 |
公开(公告)号: | CN107577525B | 公开(公告)日: | 2020-11-17 |
发明(设计)人: | 吕伟 | 申请(专利权)人: | 努比亚技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 深圳协成知识产权代理事务所(普通合伙) 44458 | 代理人: | 章小燕 |
地址: | 518000 广东省深圳市南山区高新区北环大道9018*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 创建 并发 线程 方法 装置 计算机 可读 存储 介质 | ||
1.一种创建并发线程的方法,其特征在于,所述方法包括:
当创建线程时,对所述线程的创建过程进行劫持确定所述线程的运行函数;所述创建线程用于获取访问数据;所述创建线程在native环境中;
当启动所述线程时,将所述线程挂起;
确定所述线程的运行函数中包括相同的运行函数时,根据并发策略运行所述挂起的线程;
所述方法还包括:
统计挂起的线程的第一线程数量;相应地,根据并发策略运行所述挂起的线程包括:将统计的所述第一线程数量和第一线程阈值进行比较;当统计的所述第一线程数量达到所述第一线程阈值时,运行所述挂起的线程;
或,
统计具有相同的运行函数的线程的第二线程数量;相应地,根据并发策略运行所述挂起的线程包括:将所述第二线程数量和第二线程阈值进行比较;当所述第二线程数量达到所述第二线程阈值时,运行所述挂起的线程。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
记录劫持时间;
将所述劫持时间和时间阈值进行比较;当所述劫持时间大于所述时间阈值时,运行所述挂起的线程。
3.根据权利要求1所述的方法,其特征在于,所述对所述线程的创建过程进行劫持包括:
通过动态注入将创建线程函数替换为自定义的钩子函数;
通过所述自定义的钩子函数对所述线程的创建过程进行劫持。
4.根据权利要求1所述的方法,其特征在于,所述将所述线程挂起包括:
将所述线程的线程对象放到第一线程容器中;或
将所述线程的线程标识符放到第二线程容器中。
5.一种创建并发线程的装置,其特征在于,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的创建并发线程的程序,所述处理器执行所述创建并发线程的程序,以实现:
当创建线程时,对所述线程的创建过程进行劫持确定所述线程的运行函数:所述创建线程用于获取访问数据;所述创建线程在native环境中;
当启动所述线程时,将所述线程挂起;
确定所述线程的运行函数中包括相同的运行函数时,根据并发策略运行所述挂起的线程;
所述处理器执行所述根据并发策略运行所述挂起的线程包括:
将统计的挂起的线程的第一线程数量和第一线程阈值进行比较,当统计的所述第一线程数量达到所述第一线程阈值时,运行所述挂起的线程;
或,
将统计的具有相同的运行函数的线程的第二线程数量和第二线程阈值进行比较,当所述第二线程数量达到所述第二线程阈值时,运行所述挂起的线程。
6.根据权利要求5所述的装置,其特征在于,所述处理器执行所述将所述线程挂起包括:
将所述线程的线程对象放到第一线程容器中;或
将所述线程的线程标识符放到第二线程容器中。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的创建并发线程的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于努比亚技术有限公司,未经努比亚技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710723844.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种船用卫星定位救援装置
- 下一篇:一种水下在线充电的系统