[发明专利]一种线程运行方法、系统、装置及可读存储介质在审
申请号: | 202210302310.3 | 申请日: | 2022-03-25 |
公开(公告)号: | CN114675968A | 公开(公告)日: | 2022-06-28 |
发明(设计)人: | 徐如庆 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 柳虹 |
地址: | 215100 江苏省苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 线程 运行 方法 系统 装置 可读 存储 介质 | ||
本申请公开了一种线程运行方法、系统、装置及可读存储介质,应用于信息任务处理领域,该方法包括:利用关键字volatile对目标变量定义volatile变量;当任一线程收到目标变量的操作指令,通过对应的volatile变量直接在主内存中对目标变量进行相应的操作;操作指令包括读操作指令、和/或写操作指令、和/或删除操作指令。本申请的线程运行方法,利用关键字volatile的特性实现在主内存中直接操作目标变量的动作,不需要synchronized关键字进行全局变量锁定,volatile变量缩短了全局变量的控制路径,在主内存中的操作保证了目标变量的线程运行唯一性,确保了线程运行时目标变量的安全控制。
技术领域
本发明涉及信息任务处理领域,特别涉及一种线程运行方法、系统、装置及可读存储介质。
背景技术
当前,在服务器的信息任务处理中,变量的范围控制极为重要,无法正确地使用全局变量或局部变量,会产生各种问题,例如线程之间的数据混乱、业务错乱,进而信息处理出错等。目前常用的全局变量控制,一般通过synchronized关键字实现,但这种悲观锁的性能极低,用户体验较差。
因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种控制效果较好的线程运行方法、系统、装置及可读存储介质。其具体方案如下:
一种线程运行方法,包括:
利用关键字volatile对目标变量定义volatile变量;
当任一线程收到所述目标变量的操作指令,通过对应的所述volatile变量直接在主内存中对所述目标变量进行相应的操作;
所述操作指令包括读操作指令、和/或写操作指令、和/或删除操作指令。
优选的,所述线程运行方法还包括:
当任一所述线程访问所述目标变量,将对应的所述volatile变量设置为访问状态,以避免其他所述线程访问所述目标变量;
当任一所述线程结束对所述目标变量的访问,将对应的所述volatile变量恢复为未访问状态。
优选的,所述线程运行方法还包括:
当任一所述线程对所述目标变量进行写操作,将对应的所述volatile变量设置为写入状态,以避免其他所述线程访问所述目标变量;
当任一所述线程结束对所述目标变量的写操作,将对应的所述volatile变量恢复为无写入状态。
优选的,所述线程包括Java程序的垃圾回收整理线程。
优选的,所述线程包括AI资源管理平台的服务线程。
相应的,本申请还公开了一种线程运行系统,包括:
定义模块,用于利用关键字volatile对目标变量定义volatile变量;
动作模块,用于当任一线程收到所述目标变量的操作指令,通过对应的所述volatile变量直接在主内存中对所述目标变量进行相应的操作;
所述操作指令包括读操作指令、和/或写操作指令、和/或删除操作指令。
优选的,动作模块还用于:
当任一所述线程访问所述目标变量,将对应的所述volatile变量设置为访问状态,以避免其他所述线程访问所述目标变量;
当任一所述线程结束对所述目标变量的访问,将对应的所述volatile变量恢复为未访问状态。
优选的,动作模块还用于:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210302310.3/2.html,转载请声明来源钻瓜专利网。