【发布时间】:2014-02-13 16:08:52
【问题描述】:
我有一个可以完美运行的应用程序))我已经用两种变体编写了它 - 使用并行方法和简单的分步操作,甚至得到了相同的结果......但是!在极少数情况下,我的并行代码会产生重复数据。它们中的一小部分——对于 400-500 Mb 的有效数据,我只得到 7 到 20 个字节的垃圾,甚至在每个程序运行时都没有。但我不喜欢它!我使用了同步数据存储,但它是第三方代码*。所以我想这个问题是存在的。但是我怎么能调试这种奇特的情况呢?
*我有这个第三方存储的代码
【问题讨论】:
-
你知道是C#还是Java,还是两者兼而有之?
-
没关系)我可以将我的核心代码移植到 c# 并与 VS 调试工具一起使用,或者将其留在 java IDE 中(遗憾的是,在我看来,调试工具更差)跨度>
-
调试器并不适合检测线程之间的竞争条件。没有什么比保持代码简单和准确理解代码在做什么更重要了。
-
你说得非常对 =) 我试图自我批评并记住简单是关键))事实上我只能移植我的核心(。我只有第 3 方存储代码对于java版本(并且只有dll用于win((
标签: c# java multithreading debugging synchronization