与“开始调试”相比,“附加到进程”有什么优势?

2024-02-22

我是编程新手。 我知道之前只开始调试。也许启动调试套件以更好地开发一些小型应用程序。

我发现 Visual Studio IDE 提供了另一种附加到进程的方法供使用。 何时以及为何必须使用附加调试?

比如多线程应用程序的调试。客户端/服务应用程序调试。等等,谢谢。


有时您需要调试由另一个程序启动的进程。

例如,您需要一个可靠的解决方案,并且为了防止访问冲突、内存泄漏和其他几乎无法恢复的问题,您有一个主程序和几个工作程序。主程序启动工作程序并向其传递参数。如何调试一个不打算由主程序以外的任何程序启动的工作程序?

您使用“附加到进程”。

通常,您可以这样做:插入一条语句,该语句会阻塞工作程序一段时间 - 例如,调用Sleep() http://msdn.microsoft.com/en-us/library/ms686298(VS.85).aspx15 秒。然后请主程序启动工作程序。当工作程序启动时,它会阻塞,您现在有 15 秒的时间来附加它。

通过这种方式,您可以调试几乎所有问题 - 早期启动阶段的问题、错误的参数等,而这些问题是您无法通过“调试运行”可靠地重现的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

与“开始调试”相比,“附加到进程”有什么优势? 的相关文章

  • VS 2010、NUNit 和“当前不会命中断点。尚未为此文档加载任何符号”

    使用 Windows 7 32 位 VS 2010 NET 4 DLL NUnit 2 5 5 对应用程序进行单元测试 我目前收到以下错误 看了很多帖子并尝试了以下方法 重启机器 重启VS 删除 bin obj 并重新加载 清理 重建 但我
  • 当我结束调试时,如何防止 Visual Studio 2013 关闭我的 IIS Express 应用程序?

    此前在 2012 年 如果我在 Chrome 中进行调试 例如 然后停止调试器 网站将继续在 IIS Express 中运行 2013年 情况似乎不再如此 这是我需要做出的新改变吗 即使停止调试器后如何保持网站实例运行 谢谢 关闭新的 启用
  • 如何自动将VS2003类转换为部分Designer.cs文件?

    我正在将项目从 Visual Studio 2003 升级到 2008 并希望自动生成XXX Designer cs文件并更新相应的XXX cs原版的 有什么自动的方法吗 UPDATE 我指的是WinForms 当然 我知道旧样式有效 但我
  • 有没有办法使用 Eclipse 调试 Web 应用程序?

    我正在使用 Eclipse Java IDE 开发 Web 应用程序 我使用 Tomcat 6 作为我的 servlet 容器 可用于 Java 的工具 包括 Eclipse 似乎缺乏 Web 应用程序的调试功能 与 NET 平台的 Vis
  • 路径访问被拒绝 VS 2017 无法复制文件

    最近 Visual Studio 遇到了最奇怪的问题 我正在运行 2017 年 我有一个与同事合作了一段时间的存储库 有一天我突然尝试构建 但遇到了一些错误 内容如下 访问路径 function json 被拒绝 然后 在多次尝试构建和清理
  • 使用 F5 时,finally 似乎没有在 C# 控制台应用程序中执行

    int i 0 try int j 10 i catch IOException e finally Console WriteLine In finally Console ReadLine 在VS2008中按F5时 finally块似乎
  • 如何在没有 Visual Studio 的情况下将新文件添加到 .csproj 文件

    如何添加新文件到 csproj从命令提示符 我认为没有任何工具可以响应命令行上的 add project 命令来执行此操作 但我认为您可以幸运地创建一个程序 脚本来直接操作 csproj 文件的 XML 内容 csproj 文件的结构如下所
  • 我如何解释这个 JVM 错误?

    我有一个使用一些本机代码的 Java 应用程序 但它出现了错误 我想知道where它有错误 但我不确定如何读取 hs err pid 转储文件 Native frames J compiled Java code j interpreted
  • 调试:在 Android 1.0 中找不到文件

    今天我更新到 Android Studio v 1 0 在尝试编译任何项目时出现以下错误 app build intermediates classes debug 找不到文件 问题是在更新之前我没有任何问题 这是我实际尝试编译的代码 构建
  • IntelliJ - 调试模式 - 在程序内存中搜索文本

    我正在与无证的第三方库合作 我知道有一定的String存储在库深处的某个字段中的某处 我可以预测的动态值 但我想从库的 API 中获取它 有没有一种方法可以通过以下方式进行搜索 类似于全文搜索 full程序内存处于调试模式并在某个断点处停止
  • 引用的程序集自动由 Visual Studio 替换

    我有 2 个项目 一个可移植类库和一个常规单元测试项目 在可移植类库中 我使用 NuGet 来引用 Microsoft BCL 可移植包 它附带 2 个程序集 System Threading Tasks dll and System Ru
  • 如何在 Netbeans 中调试 Java Web 应用程序?

    我曾多次在 Netbeans 中调试 Java 桌面应用程序 但从未调试过 Java Web 应用程序 我尝试以同样的方式调试它 但它不起作用 我制作了一个index html网页 该页面上有一个 表格 用户提交表单后 请求将发送至 ser
  • Visual Studio 2010 中的数据库设计器

    我需要创建一个全新的 Sql Server 2008 数据库 并希望使用 Visual Studio 2010 Ultimate 中的数据库项目 我已经创建了该项目并在下面添加了一个表格dbo架构 桌子 sql仅以纯文本形式显示 但带有颜色
  • 如何调试仅在应用程序关闭时发生的崩溃? (德尔福)

    因此 经过最近的一些更改 我们发现我们最古老的应用程序之一有时会在关闭时崩溃 这会以 运行时错误 216 消息的形式或来自 Windows 错误报告的消息的形式表明应用程序已停止工作 该应用程序已经发出OutputDebugString 每
  • C++ 中类级 new 删除运算符的线程安全

    我在我的一门课程中重新实现了新 删除运算符 现在我正在使我的代码成为多线程 并想了解这些运算符是否也需要线程安全 我在某处读到 Visual Studio 中默认的 new delete 运算符是线程安全的 但这对于我的类的自定义 new
  • 使用 NuGet 下载 WebActivator 时出错

    我刚刚在公司计算机上更新了 NuGet 包管理器 自从更新后 我无法添加任何包 例如 我尝试安装 WebActivator 并收到以下错误 PM gt Install Package WebActivator Install Package
  • Java 应用程序可以检测到调试器已连接吗?

    我知道 jvm 启动选项可以让 jvm 等待附加调试器 这不是我在这里的意思 是否有可能从 Java 代码中也检测调试器的附件 以便我可以例如编写一个正在执行某些操作的 脚本 然后在某个时刻让我的应用程序等待调试器 不会 这些选项是 JVM
  • Visual Studio Code 调试控制台中的 pydevd 警告

    我已经搜索了一段时间但找不到任何相关问题 当使用 Visual Studio Code 和 Python 扩展来调试大型元素时 计算表示或获取属性可能需要一些时间 在这些情况下 会出现如下警告 pydevd 警告 计算 DataFrame
  • 我的 Visual Studio 2008 模板有什么问题?

    我正在尝试为 Visual Studio 创建自己的类模板 称为 公共类 我跟着有关如何手动创建项目模板的官方 MSDN 说明 http msdn microsoft com en us library ms247113 aspx几乎一字不
  • 包管理器控制台中缺少文件错误

    我们的开发团队的一些成员在打开包管理器控制台时开始看到以下错误 它完全阻止我们运行实体框架命令 我们已经检查过并且提到的文件确实存在 GetEvent types ps1xml Diagnostics Format ps1xml Diagn

随机推荐

  • 64位nasm除法idiv [重复]

    这个问题在这里已经有答案了 print out division message mov rcx 0 zero out register mov rax input mov rcx input2 idiv rcx divide rax by
  • 在 python 中具有任意数量的带有命名默认值的参数

    我想用 python 编写一个函数 除了一个命名参数 带有默认值 之外 它还可以接受任意数量的未命名参数 例如 我想写这样的东西 def myFunc args optDefault 1 但这只是给出了语法错误 有没有等效的方法来做到这一点
  • 如何在 Bash 中操作十六进制值?

    我有一个具有十六进制值的变量 在本例中 一个值为 0xfe 的字节 echo MYVAR hexdump 0000000 0afe 0000002 我想在我的 bash 脚本中使用这个值 特别是我需要 用作字符串 echo X MYVAR
  • spring中rabbitmq监听器的异常处理

    使用spring 我是rabbitmq的新手 我想知道我错在哪里 我编写了一个rabbitmq连接工厂和一个包含侦听器的侦听器容器 我还为侦听器容器提供了错误处理程序 但它似乎不起作用 我的春豆
  • Python google app engine 的最佳部署策略

    我想知道是否有在 Google 应用程序引擎 特别是 Django 上部署 python 应用程序的最佳实践 模式 最佳实践应该是现有最佳实践的组合 即 Fabric Paver Buildout 等 另请分享开发的最佳实践模式 我无法让
  • 我可以在yield-return-method 中使用“using”吗?

    我刚刚看到了一个 YouTube 视频 其中导师使用了一个 Yield 返回方法来打开一个文件并从中读取行 这些行将 Yield 返回给调用者 实际代码位于 FileStream 周围的 using 块中 然后我想知道 在yield ret
  • 超时后消除反应错误消息

    我试图显示一些反应错误消息并在 5 秒超时后隐藏它们 下面是代码 import as React from react import ErrorInfo from Twilio api export const Error type mes
  • 在 C++ 中设置默认浮点打印精度

    我想在比较过程中控制双精度数的精度 然后使用 C 恢复到默认精度 我打算使用setPrecision 设置精度 那么将精度设置回默认值的语法 如果有 是什么 我正在做这样的事情 std setPrecision math log10 m F
  • 向 xml 文档添加注释

    Code from lxml import etree Create the network XML file tree root etree Element network tree etree ElementTree root Crea
  • 编译元素导致输入插入符位置移动到末尾

    我的指令有问题 该指令的目的是轻松添加验证 而无需手动将 ng class 除其他外 添加到元素中以便显示错误状态 我只是想在我的元素上放置一个 验证 指令 并在出现错误状态时生成适当的类 和错误消息 就验证而言 它运行良好 但会产生奇怪的
  • 自定义路由类

    在 symfony 1 4 中 您可以定义自定义路由类 在其中使用自定义逻辑覆盖 url 的生成 例如 custom class sfDoctrineRouteCollection options model Custom prefix p
  • 如何在jquery中选择一个元素及其子元素? [复制]

    这个问题在这里已经有答案了 我有一个 div 其中包含更多 div 这些 div 内部包含 table div 我怎样才能在jquery中选择这个父div及其子div 父 div 有类 AccordionTitle AccordionTit
  • 当我尝试使用 Rakudo 运行脚本时,为什么会出现“被零除”错误?

    我刚刚构建了 Rakudo 和 Parrot 这样我就可以使用它并开始学习 Perl 6 我下载了 Perl 6 书 并愉快地输入了第一个演示程序 网球锦标赛示例 当我尝试运行该程序时 出现错误 Divide by zero current
  • 即使活动发生变化,如何保持 Android 客户端与服务器的连接并向服务器发送数据?

    我最初在我的活动中实现了一个异步任务 将数据发送到服务器 但是当我改变活动时 连接就丢失了 为了避免这种情况 我的方法是实现一个集中网络操作并将数据发送到服务器的服务 该服务的代码如下 import java io BufferedWrit
  • Rxjs 将 Json 文档中的数组映射到新的数组类型

    我正在 Angular 服务中从 PouchDB 检索文档 该文档以以下格式检索 id segments rev 1 4f0ed65cde23fe724db13bea1ae3bb13 segments name Aerospace name
  • 并发 Sql Server 连接数

    我正在创建一个带有 Sql Server 数据库引擎的 net 应用程序 我希望每秒有数千名用户访问我的网站 连接数靠什么 IIS 和 Sql Server 可以容纳多少个连接 首先 连接和连接池之间存在区别 研究一下这一点是不是很好 因为
  • RabbitMQ 用户在预先创建的队列上发布/订阅的权限

    我有一个用例 我需要创建一个用户并授予他仅在现有队列上发布 订阅的权限 这是一个示例 虚拟主机 mainvhost 对于所有用户都相同 在虚拟主机内 我有 A foo 和 Q bar 队列 用户 foo 只能发布 订阅到 Q foo 用户
  • 如何断言不为空?

    我对 javascript 测试非常陌生 我想知道如何在中断言 not nullMocha框架 Mocha 支持您想要的任何断言库 您可以在此处查看它如何处理断言 http mochajs org assertions http mocha
  • Primefaces 仅更新选定的选项卡

    我有一种情况 当触发 选择 事件时 我想更新页面上的多个组件 However 其中两个位置位于 tabView 内 我只想更新这些组件 如果它们位于当前选定的选项卡内 我suspect我正在寻找的是这样的东西
  • 与“开始调试”相比,“附加到进程”有什么优势?

    我是编程新手 我知道之前只开始调试 也许启动调试套件以更好地开发一些小型应用程序 我发现 Visual Studio IDE 提供了另一种附加到进程的方法供使用 何时以及为何必须使用附加调试 比如多线程应用程序的调试 客户端 服务应用程序调