Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#类字典数据同步_C#_Multithreading - Fatal编程技术网

C#类字典数据同步

C#类字典数据同步,c#,multithreading,C#,Multithreading,我的程序有一个非常奇怪的问题,我从来没有见过,我真的无法找到它发生的原因/方式 我有一个包含字典和很多变量的类,我发现的问题是,当我运行我的程序时,一个类/字典有时不会用数据更新,当程序运行时,我会显示旧数据,但当我放置断点并观察该类时,我有时看不到内容,所以为了调试,我特意调用了一个什么都不做的方法,当我在类中时,我可以查看字典和所有变量以查看内容,如果我查看字典,可能会有100个项目,但显示的唯一项目是调试内容时我用鼠标滚动的项目,因此,如果我能看到20个条目,只有20个条目在课堂外显示,如

我的程序有一个非常奇怪的问题,我从来没有见过,我真的无法找到它发生的原因/方式

我有一个包含字典和很多变量的类,我发现的问题是,当我运行我的程序时,一个类/字典有时不会用数据更新,当程序运行时,我会显示旧数据,但当我放置断点并观察该类时,我有时看不到内容,所以为了调试,我特意调用了一个什么都不做的方法,当我在类中时,我可以查看字典和所有变量以查看内容,如果我查看字典,可能会有100个项目,但显示的唯一项目是调试内容时我用鼠标滚动的项目,因此,如果我能看到20个条目,只有20个条目在课堂外显示,如果我总共看40个条目,那么就会显示40个条目,如果我滚动浏览字典的全部内容,我就能看到所有条目。同样,当数据源更新时,字典不同步,必须中断并执行相同的操作才能刷新所有内容。这让我发疯,因为我不明白为什么会发生这样的事情,有什么想法吗


顺便说一下,字典数据会在另一个线程中更新,而类也会在不同的线程中更新。

是否有可能使用更多的句号?你使用的四个句号给我留下了深刻的印象,但是当计算句号比阅读问题更容易时,你可能需要做一些编辑。添加显示正在发生的事情的代码也会非常有帮助。您在更新GUI时处理过线程问题吗?请发布您面临问题的代码..发布代码非常复杂,因为其他类中至少有6个类和4个线程在运行,所以我必须发布一个很长的文件列表。我实际上刚刚设法解决了问题,但我不知道为什么现在正在工作,我想这与线程有关,不知何故,在更新字典的线程中,我放置了一个断点,在我继续操作之后,它开始完美地工作,因此我可以假设这是线程同步问题。有人知道当主程序运行到断点时线程是否继续吗?是否有可能使用更多的句号?你使用的四个句号给我留下了深刻的印象,但是当计算句号比阅读问题更容易时,你可能需要做一些编辑。添加显示正在发生的事情的代码也会非常有帮助。您在更新GUI时处理过线程问题吗?请发布您面临问题的代码..发布代码非常复杂,因为其他类中至少有6个类和4个线程在运行,所以我必须发布一个很长的文件列表。我实际上刚刚设法解决了问题,但我不知道为什么现在正在工作,我想这与线程有关,不知何故,在更新字典的线程中,我放置了一个断点,在我继续操作之后,它开始完美地工作,因此我可以假设这是线程同步问题。有人知道主程序遇到断点时线程是否继续吗?