The present invention provides a method and a device for processing thread timeout timeout, thread processing method comprises the following steps: pre setting signal processing function, including: obtaining the timeout thread of the ID generation; carrying the timeout thread ID function calls to send commands; the service process the thread in the timeout function calls instructions to enable the service process control the ID corresponding to the timeout thread to perform the signal processing function, signal processing function to obtain the timeout thread function calls using the. The time out thread processing device comprises a setting module, an acquisition module, an instruction module and a signal sending module. The invention can improve the efficiency of overtime thread processing.
【技术实现步骤摘要】
一种超时线程处理方法及装置
本专利技术涉及计算机
,特别涉及一种超时线程处理方法及装置。
技术介绍
Linux系统成本低并且具有开放性、良好的稳定性和安全性。很多大型企业通过Linux系统处理数据,以支持各企业自己的产品和相关服务。对Linux系统而言,线程是各种服务和具体任务的主体,若线程超时无响应,则无法完成具体业务功能,无法提供服务。当线程出现超时无响应时,现有技术通过看门狗系统重启服务进程并将超时线程名称记录日志。现有技术只记录超时线程名称,导致用户不能找到线程超时的原因,从而降低了超时线程处理效率。
技术实现思路
本专利技术实施例提供了一种超时线程处理方法及装置,能够提高了超时线程处理效率。第一方面,本专利技术提供了一种超时线程处理方法,预先设置信号处理函数,还包括:获取超时线程的ID;生成携带所述超时线程的ID的函数调用关系指令;向所述超时线程所在的服务进程发送所述函数调用关系指令,以使所述服务进程控制所述ID对应的所述超时线程执行所述信号处理函数,利用所述信号处理函数获取所述超时线程的函数调用关系。优选地,在所述获取超时线程的ID之前,进一步包括:针对任一运行线程,当接收到所述运行线程发来的超时时间长度时,执行:判断在超时时间范围内是否接收到所述运行线程发送的任务完成的信号,如果没有,则将所述运行线程作为所述超时线程;其中,所述超时时间范围为从接收到所述运行线程发送的所述超时时间长度开始经过所述超时时间长度的时间范围。优选地,在所述向所述超时线程所在的服务进程发送所述函数调用关系指令之后,进一步包括:预先创建数据库,将每一个所述运行线程中运 ...
【技术保护点】
一种超时线程处理方法,其特征在于,预先设置信号处理函数,还包括:获取超时线程的ID;生成携带所述超时线程的ID的函数调用关系指令;向所述超时线程所在的服务进程发送所述函数调用关系指令,以使所述服务进程控制所述ID对应的所述超时线程执行所述信号处理函数,利用所述信号处理函数获取所述超时线程的函数调用关系。
【技术特征摘要】
1.一种超时线程处理方法,其特征在于,预先设置信号处理函数,还包括:获取超时线程的ID;生成携带所述超时线程的ID的函数调用关系指令;向所述超时线程所在的服务进程发送所述函数调用关系指令,以使所述服务进程控制所述ID对应的所述超时线程执行所述信号处理函数,利用所述信号处理函数获取所述超时线程的函数调用关系。2.根据权利要求1所述的方法,其特征在于,在所述获取超时线程的ID之前,进一步包括:针对任一运行线程,当接收到所述运行线程发来的超时时间长度时,执行:判断在超时时间范围内是否接收到所述运行线程发送的任务完成的信号,如果没有,则将所述运行线程作为所述超时线程;其中,所述超时时间范围为从接收到所述运行线程发送的所述超时时间长度开始经过所述超时时间长度的时间范围。3.根据权利要求2所述的方法,其特征在于,在所述向所述超时线程所在的服务进程发送所述函数调用关系指令之后,进一步包括:预先创建数据库,将每一个所述运行线程中运行的函数的代码保存到所述数据库中;根据所述超时线程的函数调用关系,确定导致所述超时线程超时的问题函数;从所述数据库中确定所述问题函数对应的代码。4.根据权利要求2中所述的方法,其特征在于,在所述判断在超时时间范围内是否接收到所述运行线程发送的任务完成的信号之前,进一步包括:预先配置每个所述运行线程,使得每个所述运行线程在完成任务时周期性地发出任务完成的信号。5.根据权利要求1-4中任一所述的方法,其特征在于,所述信号处理函数,用于遍历所述超时线程对应的堆栈,从所述堆栈中获取所述函数调用关系。6.一种超时线程处理装置,其...
【专利技术属性】
技术研发人员:黄洋,
申请(专利权)人:山东浪潮商用系统有限公司,
类型:发明
国别省市:山东,37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。