public void Reset() { _recipient = null; _recipientInternal = null; _recipientPrivate = null; _recipientReference = null; }
public void Reset() { _recipient = null; _recipientInternal = null; _recipientPrivate = null; _recipientReference = null; }
public void TestGarbageCollectionForAnonymousMethodInternal() { Messenger.Reset(); _recipientInternal = new TestRecipientInternal(WeakActionTestCase.AnonymousMethod); _recipientReference = new WeakReference(_recipientInternal); Assert.AreEqual(null, _recipientInternal.Content); Assert.IsTrue(_recipientReference.IsAlive); const string message = "Hello world"; Messenger.Default.Send(message); Assert.AreEqual(message, _recipientInternal.Content); _recipientInternal = null; GC.Collect(); #if SILVERLIGHT // Cannot GC the anonymous method reference in Silverlight Assert.IsTrue(_recipientReference.IsAlive); _recipientInternal = (TestRecipientInternal)_recipientReference.Target; Messenger.Default.Unregister(_recipientInternal); _recipientInternal = null; GC.Collect(); Assert.IsFalse(_recipientReference.IsAlive); #else Assert.IsFalse(_recipientReference.IsAlive); #endif }
public void TestGarbageCollectionForAnonymousMethodInternal() { Messenger.Reset(); _recipientInternal = new TestRecipientInternal(WeakActionTestCase.AnonymousMethod); _recipientReference = new WeakReference(_recipientInternal); Assert.AreEqual(null, _recipientInternal.Content); Assert.IsTrue(_recipientReference.IsAlive); const string message = "Hello world"; Messenger.Default.Send(message); Assert.AreEqual(message, _recipientInternal.Content); _recipientInternal = null; GC.Collect(); Assert.IsFalse(_recipientReference.IsAlive); }
public void TestGarbageCollectionForAnonymousStaticMethodInternal() { Messenger.Reset(); TestRecipientInternal.Reset(); _recipientInternal = new TestRecipientInternal(WeakActionTestCase.AnonymousStaticMethod); _recipientReference = new WeakReference(_recipientInternal); Assert.AreEqual(null, TestRecipientInternal.ContentStatic); Assert.IsTrue(_recipientReference.IsAlive); const string message = "Hello world"; Messenger.Default.Send(message); Assert.AreEqual(message, TestRecipientInternal.ContentStatic); _recipientInternal = null; GC.Collect(); Assert.IsFalse(_recipientReference.IsAlive); }
public void TestGarbageCollectionForAnonymousMethodInternal() { Messenger.Reset(); _recipientInternal = new TestRecipientInternal(WeakActionTestCase.AnonymousMethod); _recipientReference = new WeakReference(_recipientInternal); Assert.AreEqual(null, _recipientInternal.Content); Assert.IsTrue(_recipientReference.IsAlive); const string message = "Hello world"; Messenger.Default.Send(message); Assert.AreEqual(message, _recipientInternal.Content); _recipientInternal = null; GC.Collect(); #if SILVERLIGHT // Cannot GC the anonymous method reference in Silverlight Assert.IsTrue(_recipientReference.IsAlive); _recipientInternal = (TestRecipientInternal)_recipientReference.Target; Messenger.Default.Unregister(_recipientInternal); _recipientInternal = null; GC.Collect(); Assert.IsFalse(_recipientReference.IsAlive); #else Assert.IsFalse(_recipientReference.IsAlive); #endif }