zoukankan      html  css  js  c++  java
  • 宿主进程 vshost.exe

    Hosting Process (vshost.exe)

    宿主进程是VS的一个特性。可以提高调试的性能,可以进行部分信任调试(partial trust debugging),可以进行设计时表达式计算。宿主进程的文件名中包含vshost,宿主进程被放置在创建的项目的输出文件夹中

    更多内容,参见调试和宿主进程。

    注意:宿主进程文件(.vshost.exe)是给VS用的,不应该直接运行或者和创建的应用程序一起部署。

    1.提高调试的性能

    宿主进程创建一个应用程序域( application domain)并且将调试器和应用程序相关联。在调试开始时和应用程序运行时,执行这些任务会有明显的延迟{没有宿主进程的话}。宿主进程会提高性能,这是因为在应用程序间创建应用程序域,并在后台关联调试器,保存了应用程序域和调试状态。更多关于应用程序域的信息,参见应用程序域。

    2.部分信任调试

    一个应用程序可以在项目设计(Project Designer)的安全页(Security Page)中被指定为部分信任的应用程序。调试一个部分信任的应用程序对应用程序域进行特殊的初始化。

    3.设计时表达式计算

    设计时表达式计算使得能够从即时窗体中进行调试而不用运行程序。宿主进程设计时表达式计算时运行代码。更多信息,参见即时窗体。

    How to: Disable the Hosting Process

    在VS中启用宿主进程这个特性,对某些API的调用是有影响的。在这种情况下,需要禁用宿主进程特性,使API调用能够返回正确值。

    禁用宿主进程

    1.在VS中打开可执行项目。对于不可执行的项目是没有宿主进程这个选项的(比如类库项目,服务项目)。{Ps:我新建了一个类库项目,打开选项卡,发现也有这个选项。}

    2.在项目菜单中,选择属性

    3.单击调试选项卡

    4.将允许使用VS宿主进程复选框清空。

    备注:

    禁用宿主进程,可能会使一些调试功能无法使用,性能下降。

    一般可能的情况:

    1.启动调试的时间增加。

    2.设计时表达式计算不可用。

    3.部分信任调试不可用。

  • 相关阅读:
    sizeof()使用错例:sizeof(i++)
    修改linux命令符和解决命令符太长的问题
    【转载】阻止拷贝的三种方式
    git命令几个总结
    scp用法
    RAII
    a linked list
    c++11之函数式编程实例
    [转]基于SAML的单点登录介绍
    [转]OAuth、OAuth2与OpenID区别和联系
  • 原文地址:https://www.cnblogs.com/niaomingjian/p/3943344.html
Copyright © 2011-2022 走看看