我可以使用ClrMD仅遍历前端进程使用的对象吗?

时间:2017-08-07 11:03:23

标签: c# visual-studio debugging diagnostics clrmd

目前,我可以使用ClrMD使用以下代码获取堆中存在的所有对象。 是否可以只获取目标进程中使用的对象集(即只有目标进程的源代码内的对象)。

val DBURL= "jdbc:sqlserver://servername:port;DatabaseName=DBname"  
val srcfile=spark.read.text("filename")
val test =srcfile.write.format("jdbc")
          .option("url", DBURL)
          .option("dbtable", "tablename")
          .option("user", "username")
          .option("password", "password")
          .save()

1 个答案:

答案 0 :(得分:1)

据我所知,VS配置文件工具具有在程序运行时收集函数的所有调用者(对象,函数)的功能。这是你想要的吗?

参考:

How to list all calls of a function at runtime?

更新

CLrMD确实有用于枚举PDB信息的类。我建议你尝试使用DataTarget类来枚举堆栈帧的参数/本地。他们必须向DataTarget类添加代码才能这样做,因为它看起来不像它当前支持它。