我正在WPF中使用普通的Prism和MVVM概念开发实时图形应用程序。内存大小实时增长迅速图
我有一个ViewModel,我有收集说GraphDotsCollection,每秒后不断更新。每秒增加100点。该集合绑定在图表控制中。
现在,随着集合的不断增长,内存大小也增长得非常快,最终引发系统内存异常异常。
我不知道如何摆脱这个内存问题。
我正在使用WPF工具包。
请帮忙。提前致谢。
dĴ
我正在WPF中使用普通的Prism和MVVM概念开发实时图形应用程序。内存大小实时增长迅速图
我有一个ViewModel,我有收集说GraphDotsCollection,每秒后不断更新。每秒增加100点。该集合绑定在图表控制中。
现在,随着集合的不断增长,内存大小也增长得非常快,最终引发系统内存异常异常。
我不知道如何摆脱这个内存问题。
我正在使用WPF工具包。
请帮忙。提前致谢。
dĴ
我相信你没有犯这样愚蠢的错误,但只是一个复核。
检查您的ViewModel。您必须声明一些CLR属性和那些被绑定到浏览控件(如: - 图表控制)
你CLR属性应该喜欢
Public string YourCLRProp
{
get { return _yourVariable;}
set { _yourVariable=value;}
}
它不应该像
Public string YourCLRProp
{
get { return YourCLRProp;}
set { YourCLRProp=value;}
}
public GraphDotsCollection GraphDotsCollection {}我认为它是正确的......但有一点,财产声明如何影响性能..? –
您可以发布您的属性声明代码 –
循环属性定义与内存占用有什么关系?如果您的第二个示例中的属性已设置或读取,它将最终抛出StackOverflowException,但不会抛出OOM。 – EricSchaefer
DJ,欢迎来到堆栈溢出。在这里,我们展示欣赏,并让未来的访问者知道哪个答案正确回答了问题。请接受解决您问题的答案。 – Shahbaz
另外,在这个特定问题的情况下,我发现你已经找到了解决方案。你可以回答你自己的问题,然后接受它。 – Shahbaz