用于查找竞争条件/死锁的 C#/.NET 分析工具

2024-04-16

是否有工具可以分析 .NET 代码并查找竞争条件?

我有一些代码具有公共静态属性,可以获取或创建私有静态字段。它还有一个公共静态方法,将该字段设置为 null(...是的,我知道!..)

由于这两种方法都没有锁,所以可以肯定的是,将来事情会出现严重错误。我需要一个工具,它可以递归地遍历调用这些方法中的任何一个的东西,并查看是否在另一个线程上生成了任何东西。

我正在寻找一个工具或者可能是一个 nDepend SQL 脚本(如果可能的话)。


您可能正在寻找其中之一:

  • CHESS http://research.microsoft.com/en-us/projects/chess/
  • 类型模拟赛车手 http://site.typemock.com/typemock-racer-product/

NOTE:此答案来自 2010 年。与所有建议答案一样,建议往往会随着时间而变化。现在可能还有其他产品,CHESS(微软研究实验室的一个项目)可能已经发展成为最终产品,或者被完全废弃。请对这个答案持保留态度,并对哪些产品现在适合进行新的研究。

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

用于查找竞争条件/死锁的 C#/.NET 分析工具 的相关文章

随机推荐

  • .NET 3.5 处置注册表项

    我有以下代码 RegistryKey installKey Registry LocalMachine OpenSubKey installKey 我正在我的代码上运行静态分析工具 它给了我一个缺陷 说我从方法中返回而没有处理安装密钥 我知
  • 如何在Scrapy中迭代div?

    这可能是一个非常微不足道的问题 但我是 Scrapy 的新手 我试图找到问题的解决方案 但我只是看不出这段代码有什么问题 我的目标是废弃给定网站上的所有歌剧节目 每个节目的数据都位于一个具有 row fluid row performanc
  • JSON 到带有关系的核心数据

    下列的Ray Wenderlich 的新教程 http www raywenderlich com 15916 how to synchronize core data with a web service part 1我能够获取 JSON
  • Scrapy中如何控制yield的顺序

    帮助 阅读下面的scrapy代码和爬虫的结果 我想从中抓取一些数据http china fathom info data data json http china fathom info data data json 并且仅Scrapy被允
  • 在 PHP 中将静态方法作为参数传递

    在 PHP 中是否可以做这样的事情 myFunction MyClass staticMethod 这样 myFunction 将拥有对静态方法的引用并能够调用它 当我尝试它时 我收到 未定义的类常量 PHP 5 3 的错误 所以我想这不是
  • 关闭某个 url 上的 SFSafariViewController

    当我到达某个页面时 我试图关闭 SFSafariViewController 但在明确按下 完成 按钮之前我无法执行此操作 由用户 我想要的是在到达某个页面时立即获取 URL 然后关闭视图控制器 然后我可以用这个选择剩下的 func saf
  • 无法从 jar 文件中找到 Premain-Class 清单属性

    我从单个 class 创建了一个 jar 并且在清单中提到了 Premain class 该 jar 是按预期生成的 但是当我尝试运行使用该 jar 中的类的程序时 出现错误 清单 MD Premain Class Agent 代理程序 j
  • 变得坚固:: #connect 上的网络错误

    我尝试实现 fetch 并引发了此异常 Rugged NetworkError 此传输未实现 对不起 我能够检索远程实例 remote Rugged Remote lookup repo remote name remote connect
  • 如何学习 R 作为编程语言 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我想知道如何将 R 语言作为 编程 语言来学习 而不是作为统计系统来学习 我的问题是由于缺乏对解析 评估等函数的理解而提出的 这些函数可能不会被
  • 权限被拒绝(公钥)。无法从远程存储库读取。

    我很抱歉 但我不知所措 我尝试按照其他说明进行操作 但无济于事 希望我的帖子足够清晰 以便我能够得到如何解决的简洁步骤 我在文件夹 x 中有一个文件 test1 php 我在 x test1 php 中打开了一个 Git Bash 对话框
  • 清除编辑文本 - adb

    如何使用 shell 命令清除焦点编辑文本 I tried adb shell input keyevent KEYCODE CLEAR Not worked adb shell input keyevent KEYCODE DEL Del
  • PostgreSQL 错误“无法连接到服务器:没有这样的文件或目录”

    像其他一些人一样 当我在项目中运行 rake db migrate 或什至尝试为我的大多数数据库任务时 我会收到此错误红宝石 on Rails http en wikipedia org wiki Ruby on Rails3 2 应用 P
  • 在摩卡中运行超级测试时如何获取实际的服务器错误?

    我有使用 supertest 和 mocha 的代码 import request from supertest var newGame describe Creating game function beforeEach function
  • 集成 Android Firebase 应用程序的推送通知

    我们正在构建一个实时聊天应用程序 供企业与消费者联系 目前我们正在使用 Firebase https www firebase com https www firebase com 作为原型的后端 它似乎工作正常 然而 我们在推送通知方面遇
  • 为什么“operator>”需要 const 而“operator<”则不需要?

    考虑这段代码 include
  • favicon.ico 没有出现在任何地方

    我在这里看了几篇文章 并且在网上做了进一步的研究 但我找不到问题所在 我将 favicon ico 放在主目录中 但它没有显示在任何浏览器上 我亲自在 Firefox 和 Safari 上进行了尝试 并在 Browsershots 上尝试了
  • 使用带有布尔 IN 参数的 CallableStatement 在 Java 中调用 Oracle PL/SQL 过程会出现 PLS-00306 oracle 错误:

    我在 Oracle 11g 上有一个 pl sql 过程 具有以下参数 PROCEDURE validate product product id in IN varchar2 username in in varchar2 source
  • jQuery 中的“return this.each()”有什么作用?

    我正在寻找一个 jQuery 插件 它只有一个功能 通过构造函数参数设置适当的默认值后 该函数定义了几个辅助函数 然后作为最后一部分返回对 this each 的调用 如下所示 return this each function long
  • 如何将三地址代码转换为MIPS汇编语言?

    我正在做一个项目 其中我必须创建一个翻译器来为 C 代码生成 MIPS 汇编代码 正在使用的编程语言是 C 我已经完成了三个地址代码的生成 但我对如何进一步进行感到非常困惑 如前所述 这是直接翻译 确实没有什么需要澄清的 以下面的三地址代码
  • 用于查找竞争条件/死锁的 C#/.NET 分析工具

    是否有工具可以分析 NET 代码并查找竞争条件 我有一些代码具有公共静态属性 可以获取或创建私有静态字段 它还有一个公共静态方法 将该字段设置为 null 是的 我知道 由于这两种方法都没有锁 所以可以肯定的是 将来事情会出现严重错误 我需