智业互联(厦门)健康科技有限公司许友正获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉智业互联(厦门)健康科技有限公司申请的专利一种低性能损耗的安全点中线程栈获取方法、装置及存储介质获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN116339866B 。
龙图腾网通过国家知识产权局官网在2025-10-10发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202310112365.2,技术领域涉及:G06F9/448;该发明授权一种低性能损耗的安全点中线程栈获取方法、装置及存储介质是由许友正;梅国赠;郑保顺;胡豪杰;伍晓军;李中辉;黄文质设计研发完成,并于2023-02-14向国家知识产权局提交的专利申请。
本一种低性能损耗的安全点中线程栈获取方法、装置及存储介质在说明书摘要公布了:本发明提出了一种低性能损耗的安全点中线程栈获取方法、装置及存储介质,该方法包括:将opencvjdk源代码中的Threads::print_on函数所引用的本地符号转换为全局符号;判断当前系统的状态是fullgc状态或是高CPU状态;如果当前系统的状态是fullgc状态,则在回调中调用Threads::print_on获取线程栈;如果当前系统的状态是高CPU状态,则挂起所有线程,通过一个代理函数获取线程栈。本发明中,将opencvjdk源代码中的Threads::print_on函数所引用的本地符号转换为全局符号,进而Threads::print_on函数可以被外部调用,使得其可以用于获取线程栈,根据不同的状态采用不同的线程栈获取方式,基本上对CPU的性能不影响,即实现了低性能损耗下的线程栈获取。
本发明授权一种低性能损耗的安全点中线程栈获取方法、装置及存储介质在权利要求书中公布了:1.一种低性能损耗的安全点中线程栈获取方法,其特征在于,该方法包括: 转换步骤,将opencvjdk源代码中的Threads::print_on函数所引用的本地符号转换为全局符号,所述本地符号转换为全局符号的操作为:使用python库lief将所述本地符号转换成全局符号,所述本地符号包括:gclog_or_tty、_ZN7Threads8print_onEP12outputStreambbb、_ZN9Arguments16_gc_log_filenameE、和_Z16ostream_init_logv; 判断步骤,判断当前系统的状态是fullgc状态或是占用CPU90%以上线程的状态; 获取步骤,如果当前系统的状态是fullgc状态,则基于jvmti编写动态库,注册事件JVMTI_EVENT_GARBAGE_COLLECTION_START,在当前系统的状态是fullgc状态激活所述事件JVMTI_EVENT_GARBAGE_COLLECTION_START,通过激活的事件JVMTI_EVENT_GARBAGE_COLLECTION_START激活回调函数CallBack在回调中调用Threads::print_on打印所有线程栈;如果当前系统的状态是占用CPU90%以上线程的状态,则基于jvmti编写一个代理函数agent,在所述agent中实现一个函数inner_stack_tty用于调用jvmti的GetAllStackTraces函数以获取所有线程栈,在占用CPU90%以上线程的状态时,将编写的外部脚本远程注入到一目标进程,在所述目标进程中调用所述agent中的函数inner_stack_tty获取所有线程后并挂起所有线程,然后调用Threads::print_on打印所有线程栈;其中,所述Threads::print_on将线程栈打印在gclog_or_tty中,用户通过对gclog_or_tty进行解析获取线程栈。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人智业互联(厦门)健康科技有限公司,其通讯地址为:361000 福建省厦门市翔安区莲亭路815号2层201、3层301;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

皖公网安备 34010402703815号
请提出您的宝贵建议,有机会获取IP积分或其他奖励