Ill*_*dan 1 c# garbage-collection
似乎无法通过GC收集动作.为什么?
WeakReference reference = null;
WeakReference reference2 = null;
new Action(() =>
{
Action<string> deliveryMessage = (ans) => { };
object a = new object();
reference = new WeakReference(deliveryMessage);
reference2 = new WeakReference(a);
}) ();
GC.Collect();
GC.WaitForPendingFinalizers();
Assert.Null(reference2.Target); //True
Assert.Null(reference.Target); //False
Run Code Online (Sandbox Code Playgroud)
我将在WeakReference列表中使用Action,但我需要先通过这个简单的测试才能完成...