Beispiel #1
0
        WeakReference MemoryCoreAlloc(Action <Subscriber2, EventOwner> subscribe, Action <Subscriber2> check, Action <EventOwner> raise)
        {
            EventOwner  e = new EventOwner();
            Subscriber2 s = new Subscriber2();

            subscribe(s, e);
            Collect();
            raise(e);
            check(s);
            s.Clear();
            return(new WeakReference(s));
        }
        void MemoryCore(Action <Subscriber2, EventOwner> subscribe, Action <Subscriber2> check, Action <EventOwner> raise)
        {
            var e = new EventOwner();
            var s = new Subscriber2();

            subscribe(s, e);
            Collect();
            raise(e);
            check(s);
            s.Clear();
            WeakReference sRef = new WeakReference(s);

            s = null;
            Collect();
            Assert.AreEqual(false, sRef.IsAlive);
        }