【摘要】 本发明实施例公开了一种检测和解除死锁的方法,所述检测死锁的方法包括:为任务设置栈;将所述任务所获的资源的资源标记依次压入栈;当所述任务释放所述资源时,将压入栈中的所述资源标记从栈中弹出;比较所述任务释放的资源的资源标记与所述从栈中弹出的资源标记是否一致,若不一致,则判定发生死锁。所述解除死锁的方法包括:停止任务运行;确定发生死锁的资源标记的位置,作为死锁位置;将死锁位置以上的资源标记,从栈中弹出并保存;将发生死锁的资源标记弹出,并释放该发生死锁的资源;将保存的资源标记压回栈。本发明实施例还提供一种检测和解除死锁的装置和系统,可以及时发现任务死锁,并解除死锁,提高了软件的可靠性。 【专利类型】发明授权 【申请人】成都市华为赛门铁克科技有限公司 【申请人类型】企业 【申请人地址】611731 四川省成都市高新区西部园区清水河片区 【申请人地区】中国 【申请人城市】成都市 【申请人区县】郫都区 【申请号】CN200810111538.4 【申请日】2008-06-05 【申请年份】2008 【公开公告号】CN101295266B 【公开公告日】2010-06-16 【公开公告年份】2010 【授权公告号】CN101295266B 【授权公告日】2010-06-16 【授权公告年份】2010.0 【IPC分类号】G06F9/46 【发明人】梁斌 【主权项内容】一种检测死锁的方法,其特征在于,包括:为任务设置栈;将所述任务所获得资源的资源标记依次压入栈;当所述任务释放所述资源时,将压入栈中的所述资源标记从栈中弹出;比较所述任务释放的资源的资源标记与所述从栈中弹出的资源标记是否一致,若不一致,则判定发生死锁。 【当前权利人】华为数字技术(成都)有限公司 【当前专利权人地址】四川省成都市高新区西部园区清水河片区 【引证次数】4.0 【被引证次数】2 【他引次数】4.0 【被他引次数】2.0 【家族引证次数】4.0 【家族被引证次数】17