网站大量收购独家精品文档,联系QQ:2885784924

多线程应用程序调试技术.pdfVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
多线程应用程序调试技术.pdf

\\\ 竺竺 多线程应用程序调试技术 飘广) (广东工业大学,广州510006) 摘要:对多线程应用程序进行调试是一项具有挑战性的任务。多线程应用程序采用的互斥、同步 技术使得调试时查看程序运行状态变得困难.线程的时序和多个线程间的交叉执行增加了 studio调 程序调试的复杂性。采用适用于调试多线程应用程序的通用技术,并结合Visual 试器提供的工具可以有效调试多线程应用程序。 关键词:多线程;调试技术;调试器;调试工具 1 多线程应用程序调试的复杂性 试多线程程序所带来的负担。 在顺序或单线程程序中.程序按照顺序执行.没有 2 多线程应用程序通用调试技术 复杂的时序和交互.在某种初始状态下开始执行程序. 程序员掌握越多的调试知识.积累越多的调试经 输入需要的数据.然后通过单步全程跟踪程序的执行. 验。就越能轻松驾驭软件调试。如果掌握了相对完整、 程序员基本上可以发现软件中的所有错误.这使得单线 系统的调试基础知识和概念.程序员就可以更轻松地 程程序调试相对简单.利用一般调试器的简单断点功能 完成调试多线程应用程序这一项繁琐、费时的但又不 和单步调试功能就可以对单线程程序进行有效地调试。 可避免的任务。 但是对于多线程应用程序的调试.如果只使用简 2.1在设计时考虑调试问题 单断点和单步调试是很难完成的。多个线程竞争使用 虽然想完全避免调试是不可能的.但是如果代码 临界资源是多线程程序普遍存在的问题.而在设置的 本身的错误不多。那么调试丁作就会相对轻松。要减少 断点处或单步跟踪点处的中断或其他调用极有可能影 多线程程序代码中的缺陷.首先要减少在软件设计开 响多线程之间的竞争状态.从而改变程序的真实执行 始时引入的错误。很多软件错误都可以通过采用正确 路径。更复杂的,多线程应用程序的执行受到很多因素 的软件开发过程来避免。在设计多线程应用程序时,应 的影响,包括机器的动态负载.操作系统的进程和线程 该注意以下几个问题。 的调度策略、进程和线程的优先级情况、CPU的时间片 (1)应用程序应该被设计成能够串行执行 设定、通信和执行迟延等.在对其进行调试时。由于断 一个应用程序应该总是能够进行串行执行111。对于 点或跟踪点等使得程序的暂停有可能影响上述因素的 一个问题的解决方案.可以先设计一个单线程版本.经 状态.而这些因素的变化可能产生很多不可预料的情 过测试与调试.满足功能后再转化为多线程版本。这样 形,例如死锁、无限延迟,数据竞争以及其他问题。 可以使程序员提前发现和消除与线程无关的错误.从 所有的这些都使得多线程应用程序的调试工作变 而在多线程版本调试时能够更关注与多线程有关的问 得相当复杂,确定程序出错时的状态很困难.而了解某 题.更快地切入问题的重点。

您可能关注的文档

文档评论(0)

ziyouzizai + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档