[发明专利]线程管理方法、装置、电子设备及存储介质有效
申请号: | 201911100202.2 | 申请日: | 2019-11-12 |
公开(公告)号: | CN110851286B | 公开(公告)日: | 2023-02-17 |
发明(设计)人: | 孔德刚 | 申请(专利权)人: | 北京城市网邻信息技术有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52 |
代理公司: | 北京弘权知识产权代理有限公司 11363 | 代理人: | 逯长明;许伟群 |
地址: | 100015 北京市朝阳区酒仙桥*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 管理 方法 装置 电子设备 存储 介质 | ||
本发明公开了一种线程管理方法、装置、电子设备及存储介质,能够利用操作系统中运行线程的线程指标,判断出线程是否发生死锁,并为死锁的线程分配相应的预警处理策略或者仲裁处理策略,不论是预警处理策略还是仲裁处理策略都是为了将死锁线程所占用的系统资源释放出来,防止多个线程同时竞争系统资源的情况,进而避免线程运行造成的死锁问题。本发明的技术方案能够避免人工排查死锁线程造成的准确率低和效率低的问题。
技术领域
本发明涉及软件开发技术领域,尤其涉及线程管理方法、装置、电子设备及存储介质。
背景技术
线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,一个进程中可以并发多个线程,每个线程可以并行执行不同的任务。并发进行的多个线程通常以线程池的形式处理,线程池在处理过程中先将任务添加到队列,然后在创建线程后自动启动这些任务。
现今的操作系统多是根据实际处理的业务种类或者业务需求,对不同的业务分别建立各自的线程或者线程池;而后操作系统中各个业务对应的线程或者线程池并行运行,使得操作系统中的各个业务可以并行操作。但是,对不同业务对应建立线程或者线程池的方式,会使得操作系统并行处理多个业务时,出现多个线程同时竞争系统资源的情况,进而造成线程运行阻塞的死锁现象。
目前,当操作系统中发生线程死锁时,多是依靠人工对每一个运行的线程逐一进行排查,最终排查出死锁线程并解除死锁,以释放该线程所占用的系统资源,然而这种人工排查方式又非常耗时,如果当前运行的线程比较多,人工也难以快速又准确地从众多的线程中找到发生死锁的线程。
发明内容
本发明提供了一种线程管理方法、装置、电子设备及存储介质,以解决目前人工排查死锁线程时准确低和效率低的问题。
第一方面,本发明提供了一种线程管理方法,包括:
获取操作系统中当前运行的任一线程的N个线程指标,其中N大于或者等于1,所述线程指标用于表征线程在操作系统中当前的运行状态;
根据所述N个线程指标,确定所述任一线程是否达到预警条件;
当所述任一线程达到预警条件时,进一步根据所述N个线程指标,确定所述任一线程是否达到仲裁条件;
若所述任一线程未达到仲裁条件,则对所述任一线程执行预警处理策略;
若所述任一线程达到仲裁条件,则对所述任一线程执行仲裁处理策略。
结合第一方面,在第一方面的一种可实现方式中,根据所述N个线程指标,确定所述任一线程是否达到预警条件,包括:
当所述N个线程指标中存在M个线程指标超过该指标对应的指标阈值时,则确定所述任一线程达到预警条件,其中N大于M;
进一步根据所述N个线程指标,确定所述任一线程是否达到仲裁条件,包括:
当所述N个线程指标中存在P个线程指标超过该指标对应的指标阈值时,则确定所述任一线程达到仲裁条件,其中N大于或者等于P,P大于M。
结合第一方面,在第一方面的一种可实现方式中,根据所述N个线程指标,确定所述任一线程是否达到预警条件,包括:
当所述N个线程指标中每一个线程指标的量化值与其指标权重值的乘积的累计和大于第一阈值时,则确定所述任一线程达到预警条件;
进一步根据所述N个线程指标,确定所述任一线程是否达到仲裁条件,包括:
当所述N个线程指标中每一个线程指标的量化值与其指标权重值的乘积的累计和大于第二阈值时,则确定所述任一线程达到仲裁条件。
结合第一方面,在第一方面的一种可实现方式中,对所述任一线程执行预警处理策略,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京城市网邻信息技术有限公司,未经北京城市网邻信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911100202.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:广告实验和发布系统
- 下一篇:柴油颗粒捕集器灰分清洗液及其制备方法