如何在执行函数时从C++"hook into" Python?我的目标是剖析
How can I "hook into" Python from C++ when it executes a function? My goal is to profile
我正在一个应用程序中实现一个分析器,我有点困惑如何实现Python分析,以便结果可以显示在我现有的工具中。该应用程序允许通过与Python解释器通信来编写Python脚本。
我想知道是否有人有关于如何从c++配置Python函数的想法
谢谢你的建议
不确定你的目标是什么,但我个人不会从零开始,而是使用现有的模块进行分析。cprofile模块是用C编写的,如果相信文档,应该很容易扩展:http://docs.python.org/release/3.2/library/profile.html#extensions-deriving-better-profilers
我们在Lua中经常使用的分析已经存在的函数的常用技术是用您自己的版本覆盖函数,该版本将开始计时,调用原始函数,并停止计时,返回原始函数返回的值。
相关文章:
- 是什么导致我的 Python 紧缩 C 扩展崩溃?
- C++ :从C++脚本内部触发存储在我机器上的 python 脚本
- 设置 Xcode 标志以便将 python 嵌入我的C++项目中
- 为什么“ld:找不到 -lstdc++ 的库”,当我使用 pybind11 为 c++ 库打包我的 python 绑定时
- ZMQ Python PUB/SUB 有效,但我的 C++ Subscriber with Python Publish
- 将 python 嵌入我的应用程序时内存泄漏
- 同样的逻辑适用于 c++,但在 python 中不适用于堆栈中的最大值,我的代码中是否缺少一些东西
- 当C 和Python文件不在同一文件夹时,我该如何导入Pybind11上的Python脚本
- 在我的Qt C++应用程序中使用Anaconda的Python
- 如何使用 Python 实验室机器作为我的C++客户端代码的服务器
- 我如何使我的Python扩展需要其他论点
- 为什么我的C 文本文件解析脚本比我的Python脚本要慢得多
- C++ Python 关闭了我的程序
- 我的Py_NoneStruct符号(python,boost.python)在哪里
- 通过我的Python脚本中的子进程从c++中捕获cout
- 将Python变量传递给我的C++脚本和g++调用
- 我的Python interpreter使用的msvcrXX.dll版本
- 我认为python正在覆盖我的vtable(c ++扩展)
- 在windows上链接Python到我的c++代码-链接错误
- 我如何得到Visual Express 2010找到我的python.h头文件