public virtual void TestRemoveListener() { var latch1Add = new CountdownEvent(1); var latch1Remove = new CountdownEvent(1); var listener1 = new EntryAdapter <object, object>( delegate { latch1Add.Signal(); }, delegate { latch1Remove.Signal(); }, delegate { }, delegate { }); var listenerId = mm.AddEntryListener(listener1, true); mm.Put("key1", "value1"); Assert.IsTrue(latch1Add.Wait(TimeSpan.FromSeconds(10))); Assert.IsTrue(mm.RemoveEntryListener(listenerId)); mm.Remove("key1"); Assert.IsFalse(latch1Remove.Wait(TimeSpan.FromSeconds(10))); }