public virtual void TestRemoveListener()
        {
            var tempSet = set;
            var latch = new CountdownEvent(1);

            var listener = new ClientListTest.Listener<object>(latch);
            var registrationId = tempSet.AddItemListener(listener, true);

            Assert.IsTrue(tempSet.RemoveItemListener(registrationId));

            var t = new Thread(o => tempSet.Add("item"));
            t.Start();

            Assert.IsFalse(latch.Wait(TimeSpan.FromSeconds(10)));
        }
        public virtual void TestListener()
        {
            ////        final ISet tempSet = server.getSet(name);
            //ISet tempSet = set;
            //CountDownLatch latch = new CountDownLatch(6);
            //ItemListener listener = new _ItemListener_149(latch);
            //string registrationId = tempSet.AddListener(listener, true);
            //new _Thread_160(tempSet).Start();
            //Assert.IsTrue(latch.Await(20, TimeUnit.Seconds));

            var tempSet = set;

            var latch = new CountdownEvent(6);

            var listener = new ClientListTest.Listener<object>(latch);
            var registrationId = tempSet.AddItemListener(listener, true);

            var t = new Thread(delegate(object o)
            {
                for (var i = 0; i < 5; i++)
                {
                    tempSet.Add("item" + i);
                }
                tempSet.Add("done");
            });
            t.Start();
            Assert.IsTrue(latch.Wait(TimeSpan.FromSeconds(20)));
        }