查看python进程运行栈

本文介绍如何在Redhat、CentOS等系统上利用GDB和pyrasite工具诊断Python进程中的死锁问题。通过安装GDB和pyrasite,找到卡住的Python进程ID,使用pyrasite-shell attach到该进程,进入Python REPL环境,进一步通过打印堆栈信息来定位死锁的具体位置。
AI助手已提取文章相关产品:

reference

首先保证进程运行机器上有GDB和pyrasite

# Redhat, CentOS, etc
$ yum install gdb
pip install pyrasite

找到卡住的python进程ID,然后用pyrasite-shell attach上去

# Assuming process ID is 12345
$ pyrasite-shell 12345

进入 python repl 环境,然后输入

from __future__ import print_function

import sys, traceback

for thread_id, frame in sys._current_frames().items():
    print('Stack for thread {}'.format(thread_id))
    traceback.print_stack(frame)
    print('')

您可能感兴趣的与本文相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值