Ejemplo n.º 1
0
        public void threads(int iterations) {
            var tt = new SimpleTranslationTable<myClass>();
            var ro = new ReadonlySimpleTranslationTable<myClass>(tt);
            Parallel.For(1, iterations, (i) => {
                tt[new myClass { age=i }]=new myClass { age=i*2 };
            });

            Assert.IsTrue(tt.ToDictionary().Count() == iterations-1);

            Parallel.For(1, iterations, (i) => {
                Assert.IsTrue(ro[new myClass { age=i }] == new myClass { age=i*2 });
                Assert.IsFalse(ro[new myClass { age=i }] != new myClass { age=i*2 });
            });

        }
Ejemplo n.º 2
0
        public void complexType() {
            var tt = new SimpleTranslationTable<myClass>();
            var ro = new ReadonlySimpleTranslationTable<myClass>(tt);
            tt.Add(
                new myClass{ name="left", age=1 },
                new myClass{ name="right", age=2 }
            ).Add(
                new myClass(),
                new myClass{ name="noname", age=-1 }
            );
            var r = tt[new myClass { name="left", age=1 }];
            int i = new myClass { name="right", age=2 };
            Assert.IsTrue(r == "right, 2");
            Assert.IsTrue(r == i);

            var u = tt[new myClass()];
            i=new myClass { name="noname", age=-1 };
            Assert.IsTrue("noname, -1" == u);
            Assert.IsTrue(u == i);
        }