我很确定这是一个重复的问题,但我找不到原文.
我得到一些我需要"附加"一些信息的对象.基本上,如果该对象回到同一段代码,我需要看到我以前见过它.
即.这样的事情:
Dictionary<WeakReference<ObjectType>, string> _Cache;
Run Code Online (Sandbox Code Playgroud)
注意那里的弱引用(我知道WeakReference不是通用的btw),我需要使缓存的键成为弱引用,以处理对象被GC控制掉的事实.
现在,我可以使缓存充满弱引用,但我似乎回想起.NET中已经存在的类似类型的系统,它与对象一起自动GC.
请注意,我不记得这样的开销,所以在确定这是一个比我自己的缓存更好/更好的解决方案之前,我将确保阅读有关主题.不幸的是我无法更改有问题的对象,所以我需要在其他地方跟踪这个元信息.
我的局限:
基本上,像:
PropertyAttacher.Attach(instance, "Name", name);
Run Code Online (Sandbox Code Playgroud)
我记得没错吗?涉及的课程是什么?