Python 如何获取最后执行的线程标识符?

Python 如何获取最后执行的线程标识符?,python,multithreading,profiling,sampling,Python,Multithreading,Profiling,Sampling,我目前正在为我们的在线服务开发一个用Python编写的采样分析工具 到目前为止,我的方法是有一个专用线程,定期查看所有正在运行的Python线程并分析其当前帧。代码运行得很好,但遗憾的是,它没有反映(C)Python的协作线程本质,在C)Python中,在给定的时间只有一个给定的线程在运行(并且具有GIL)。我只想得到每个循环中最后运行的线程的帧 我见过其他工具使用signal.setitimer定期调用进程上的信号,并使用thread.get_ident()获取当前线程标识符。因为显然我们喜欢

我目前正在为我们的在线服务开发一个用Python编写的采样分析工具

到目前为止,我的方法是有一个专用线程,定期查看所有正在运行的Python线程并分析其当前帧。代码运行得很好,但遗憾的是,它没有反映(C)Python的协作线程本质,在C)Python中,在给定的时间只有一个给定的线程在运行(并且具有GIL)。我只想得到每个循环中最后运行的线程的帧

我见过其他工具使用
signal.setitimer
定期调用进程上的信号,并使用
thread.get_ident()
获取当前线程标识符。因为显然我们喜欢生活在一个痛苦的世界里,我们必须让这个工具在Windows上工作,在Windows上,
signal.setitimer
不是一个选项

Python中是否有方法从另一个线程获取以前运行的线程标识符?如果能帮我的话,写一个C扩展对我来说是可以的