有没有一个工具可以分析.NET代码并找到竞争条件?
我有一些代码,它有一个公共静态属性,可以获取或创建一个私有静态字段.它还有一个公共静态方法,将此字段设置为null(...是的,我知道!..)
由于这些方法中没有任何一种方法可以锁定,因此可以肯定的是,未来的事情将会出现严重错误.我需要一个工具,它递归地遍历调用这些方法之一的东西,看看是否有任何东西在另一个线程上产生.
我正在寻找一个工具或者一个nDepend SQL脚本(如果可能的话).
我决定开始在一个中等规模的项目上运行StyleCop,并收到超过1000个警告.
有没有一种快速简便的方法来解决大多数这些警告?大多数警告可以很容易地自动解决,并节省了我很多时间.
可能重复:
C#可以使用哪些静态分析工具?
大家好,我正在为C#寻找开源或免费的源代码分析工具.该工具应该能够从源代码生成度量标准,如圈复杂度,行数,注释行数,SEI可维护性等.有没有人知道任何这样的工具?
我采取的C#.NET并行数据结构(如ConcurrentDictionary
,BlockcingCollection
等).这不仅仅是在从不同线程访问时忘记锁定对象.它需要复杂的锁定策略来最大化并行执行时间.
我知道有一个工具,一种用于.NET的系统并发测试的框架,名为CHESS.
问题:是否还有一种工具可以通过静态代码分析找到并发/线程问题?类似CheckThread的东西,适用于java.
我最近在TeamCity花了很多时间,重复查找器和FxCop构建跑步者非常棒.我还在StyleCop的项目中有了构建目标,因此违反了这些规则,我已经集成了NDepend,它产生了一些很好的指标.
人们还有哪些其他工具可以与TeamCity成功集成?有很多可以集成到IDE中或在本地运行(如本问题中所述),如ReSharper,但显然要在构建服务器上运行,它需要能够无人值守地执行并生成可在构建报告中浮出水面的工件.到目前为止我可能错过了什么选择?
我可以使用什么工具.Net/C#项目来捕获类之间的运行时依赖关系?我发现这个问题非常有用,但建议的工具捕获静态依赖图.我只是想看看类的实例化图.
我正在使用VS 2008(但如果需要可以安装其他版本).
UPD:我的目标是这样的.我有很大的旧代码库.它有(例如)500个类但由于DB驱动的工作流程多年来发生了变化(例如)现在使用了100个类.这就是静态依赖性分析太难以消化的原因.
任何人都有任何想法或经验使用程序切片技术来调试MS Visual Studio 2008中的OO项目?工具建议会有所帮助.
它不是关于using foo = MyPackage.Foo;
我意识到这更多地与IDE(Visual Studio 2010)有关,它向我展示了蓝色的特殊类型.我想同我的一些课程.我希望它是蓝色的 (呈现为特殊的)并且可以在整个项目中访问.
原因是我想给他们意义/重要性,以便我的团队中的每个人都知道这个课程是整个项目的关键课程.
// "foo" and "Foo" shall be just the same type:
foo: MyPackage.Foo
object: System.Object
string: System.String
bool: System.Boolean
byte: System.Byte
sbyte: System.SByte
short: System.Int16
ushort: System.UInt16
int: System.Int32
uint: System.UInt32
long: System.Int64
ulong: System.UInt64
float: System.Single
double: System.Double
decimal: System.Decimal
char: System.Char
Run Code Online (Sandbox Code Playgroud)
那可能吗 ?如果我的IDE安装中有一个文件,里面会有上面的关键字,我可以添加一些关键字并保存并重新启动IDE?
要有两个班级,我可以这样做.这是同一个班级的两个名字.我知道我需要在这些之间施展.
public class foo : Foo
{ }
Run Code Online (Sandbox Code Playgroud)