День добрый
Возможно это будет вопрос для первого класса не все-таки спрошу
Есть такой код
using System;
using System.Collections.Generic;
namespace TestWeakReference
{
class Program
{
static void Main()
{
List<MyClass> list = new List<MyClass>
{
new MyClass { msg = "unu" },
new MyClass { msg = "doi" },
new MyClass { msg = "trei" },
new MyClass { msg = "patru" },
};
List<WeakReference> weaks = new List<WeakReference>();
foreach (MyClass myClass in list)
{
weaks.Add(new WeakReference(myClass));
}
Console.WriteLine("All must be alive");
foreach (WeakReference weak in weaks)
{
Console.WriteLine(string.Format("Alive {0}, class = {1}", weak.IsAlive, ((MyClass)weak.Target).msg));
}
//find needed one
MyClass my = list.Find(class1 => class1.msg == "doi");
//do something with it and delete from list
list.Remove(my);
my = null; //Как здесь убить обьект что-бы WeakReference.IsAlive в другом списке была False
//check weaks
Console.WriteLine("\tOne must be dead");
foreach (WeakReference weak in weaks)
{
Console.WriteLine(string.Format("Alive {0}, class = {1}", weak.IsAlive, ((MyClass)weak.Target).msg));
}
Console.ReadKey();
}
}
class MyClass
{
public string msg { get; set; }
}
}
Собственно, как убить обьект и ссылки на него?
Спасибо
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>