コード例 #1
0
ファイル: Program.cs プロジェクト: felipegtx/SimpleLocker
        public static void Main(string[] args)
        {
            /// Given any object instance
            var list = new List<int>();

            /// We create the simple locker instance
            var locker = new SimpleLocker();

            Parallel.For(0, 10000, i=>
                {
                    /// Safelly modify it
                    locker.WriteVoid(() => list.Add(i));

                    /// Safelly ready it
                    Console.WriteLine("CurrentCount {0} - ThreadId: {1}", locker.Read(() => list.Count), Thread.CurrentThread.ManagedThreadId);

                });

            Console.WriteLine ("Done!");
            Console.ReadLine ();
        }
コード例 #2
0
 public void AddLocker(SimpleLocker targetLocker)
 {
     lockers.Add(targetLocker);
     lockerCount++;
 }