一种基于锁的线程管理方法及装置制造方法及图纸

技术编号:15391372 阅读:73 留言:0更新日期:2017-05-19 04:43
本发明专利技术公开了一种基于锁的线程管理方法,包括步骤:S100、当接收到获取锁资源请求时,获取已分配锁资源数量信息;S200、根据所述已分配锁资源数量信息判断已分配的锁资源数量是否大于预设阈值;若是,重复执行步骤S200;否则执行下一步;S300、接受所述获取锁请求,为发起获取锁资源请求的线程分配锁资源。本发明专利技术提供一种基于锁的线程管理方法及装置,能够对锁资源进行监控,可以避免出现因持续执行锁行为监控导致的过量占用系统处理资源的问题。

Thread management method and device based on lock

The invention discloses a thread management method comprises the steps of: S100, based on the lock, when the receiver to acquire the lock resource request, gets allocated lock resource quantity information; the number of the lock S200, according to the distribution of information to determine the number of resources allocated lock is greater than a preset threshold; if yes, repeat step S200; otherwise the next step; S300, receiving the request for access to acquire the lock, initiate thread allocation requests a lock lock resource resources. The invention provides a thread management method and device based on a lock, which can monitor the lock resource and avoid the problem of excessive occupancy of system processing resources caused by continuous execution of lock behavior monitoring.

【技术实现步骤摘要】
一种基于锁的线程管理方法及装置
本专利技术涉及领域,尤其涉及一种基于锁的线程管理方法及装置。
技术介绍
Java服务器程序一般要提供高并发的服务能力,多线程使得服务的并发量大大提升。为了解决资源访问冲突的问题,锁是一种很普遍使用的技术,即多个线程同时访问一个资源时,由于某些资源存在特殊性,一次只能被一个线程访问,比如:要对文件进行写入操作,如果多个线程同时写入会造成文件内容混乱的问题。因此,要对文件进行写操作,必须设定一把锁,只有获取到锁的线程才能对文件进行写入。现实情况中,有很多地方都需要用到锁。现在Java中锁是比较成熟的技术点,但即便如此,在实际的使用过程中,还是很容易出现问题,比如某个线程一直占用着某个资源,一直不释放,其它线程会一直等待阻塞。由于客户端的请求不断产生,线程也会相应增加,如果资源一直得不到释放,很快服务端会产生大量的线程,从而使得服务器的资源耗尽,失去服务能力。
技术实现思路
为解决上述技术问题,本专利技术提供一种基于锁的线程管理方法及装置,能够对锁资源进行监控,可以避免出现因持续执行锁行为监控导致的过量占用系统处理资源的问题。本专利技术提供的技术方案如下:本专利本文档来自技高网...
一种基于锁的线程管理方法及装置

【技术保护点】
一种基于锁的线程管理方法,其特征在于,包括步骤:S100、当接收到获取锁资源请求时,获取已分配锁资源数量信息;S200、根据所述已分配锁资源数量信息判断已分配的锁资源数量是否大于预设阈值;若是,重复执行步骤S200;否则执行下一步;S300、接受所述获取锁请求,为发起获取锁资源请求的线程分配锁资源。

【技术特征摘要】
1.一种基于锁的线程管理方法,其特征在于,包括步骤:S100、当接收到获取锁资源请求时,获取已分配锁资源数量信息;S200、根据所述已分配锁资源数量信息判断已分配的锁资源数量是否大于预设阈值;若是,重复执行步骤S200;否则执行下一步;S300、接受所述获取锁请求,为发起获取锁资源请求的线程分配锁资源。2.如权利要求1所述的基于锁的线程管理方法,其特征在于,所述步骤S100之前还包括步骤:S010、设置所述预设阈值;所述预设阈值为用户设置的最大的锁资源数量;S020、设置预设时长;所述预设时长为用户设置的最长的锁资源被占用的时间。3.如权利要求2所述的基于锁的线程管理方法,其特征在于,还包括步骤:S400、监控已分配的锁资源的状态;S500、判断已分配的锁资源被占用的时间是否超过所述预设时长;若是,则强制释放锁资源。4.如权利要求3所述的基于锁的线程管理方法,其特征在于,还包括步骤:S600、当有锁资源释放时,更新所述已分配锁资源数量信息。5.一种基于锁的线程管理...

【专利技术属性】
技术研发人员:张伟
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1