sách gpt4 ăn đã đi

c# - 在运行时动态地将代码添加到方法的开头/结尾

In lại 作者:太空狗 更新时间:2023-10-29 17:50:06 28 4
mua khóa gpt4 giày nike

我知道检测是一种将跟踪代码动态添加到方法中以启用跟踪和调试的技术。

我想知道这是否只是一个“跟踪”选项,硬编码到 CLR 中以仅添加跟踪代码,或者是否能够向方法添加任何代码?

例如,我想检查某个类中每个方法调用开始时的条件(比如权限)。我可以通过在执行时将动态代码添加到方法的开头来实现吗?

我不确定这个跟踪“检测”的东西是如何工作的,但我想知道这是否也可以用于其他目标。

câu trả lời hay nhất

基本上您应该做的是编写一个 CLR 探查器并使用 profiler API在 C++ 中
您需要实现 ICorProfilerCallback 接口(interface)。
您正在寻找的是 JITCompilationStarted 回调。每次调用托管方法时以及 jit 编译器将 IL 编译为机器代码之前,都会调用此方法。运行时的任何代码插入工作都应在 JITCompilationStarted 中完成。
可以看看开源覆盖工具part cover作为一个例子,如何去做。

关于c# - 在运行时动态地将代码添加到方法的开头/结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2461862/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress