zoukankan      html  css  js  c++  java
  • 无法在互操作调试上进行编辑并继续进

    有人在论坛上问过关于在混合模式下编辑并继续(EnC)的问题。不能在启用混合模式(interop)调试的情况下使用托管EnC。这是CLR调试服务的一个限制。互操作调试和EnC都是复杂的特性;将它们结合起来将是一个巨大的测试矩阵,而且成本非常高。因此,如果你有C和本地C++解决方案,你的选择是:
    1. 如果只想调试+编辑C#代码,则可以使用仅托管调试。
    2. 如果你想调试+编辑只是本地C++代码,你可以使用纯本地调试。
    3. 如果您想调试C#和本机C++代码(但不编辑),可以使用互操作调试。
    托管调试和本机调试基本上都有自己的实现(单步执行、调用堆栈、断点、检查)。互操作调试将这两个世界粘在一起。EnC也一样。在托管代码中执行EnC与在本机代码中执行EnC完全不同,并且使用完全不相交的调试功能。因此,虽然托管EnC不能在interop下工作,但调试器可以编写本机EnC支持(我不知道VS是否允许本机EnC)。
     

    这在MC++中也很有趣。如果将C++编译到IL,那么它是托管代码,需要托管调试服务。如果将C++编译为本机,则是本地代码,并使用本机调试服务。由于Mc++使IL和本地(以及产生混合汇编)都非常容易编译C++,所以调试MC ++通常默认为互操作调试。

     
     
  • 相关阅读:
    Python MongoDB使用介绍
    算法网站
    无限级树状图css实现
    无限级别分类嵌套格式抓取
    无限级别分类
    计算多维数组到底是几维的
    获取无限级别分类
    mysql 重启
    radio 控制器function用法
    php-fpm 重启 nginx单独配置 重启
  • 原文地址:https://www.cnblogs.com/yilang/p/13913270.html
Copyright © 2011-2022 走看看