示例#1
0
        public async Task ThrowsOnMultipleConcurrentOperations()
        {
            InterlockIncrementCheck check = new InterlockIncrementCheck(1);
            List <Task>             tasks = new List <Task>(2);

            tasks.Add(this.RunLock(check));
            tasks.Add(this.RunLock(check));
            await Task.WhenAll(tasks);
        }
示例#2
0
 private async Task RunLock(InterlockIncrementCheck check)
 {
     check.EnterLockCheck();
     await Task.Delay(500);
 }