Tests.SetAndRelease_and_ResetItemTimeout_called_concurrently.SetAndRelease_and_ResetItemTimeout_called_concurrently C# (CSharp) Method

SetAndRelease_and_ResetItemTimeout_called_concurrently() public method

public SetAndRelease_and_ResetItemTimeout_called_concurrently ( ) : System
return System
        public SetAndRelease_and_ResetItemTimeout_called_concurrently()
        {
            var modifyTask = Task.Factory.StartNew(() =>
            {
                for (int i = 0; i < Iterations; i++)
                {
                    object lockId;
                    bool locked;
                    TimeSpan lockAge;
                    SessionStateActions actions;

                    var sessionState = Subject.GetItemExclusive(null, SessionId, out locked, out lockAge, out lockId, out actions);

                    Subject.SetAndReleaseItemExclusive(null, SessionId, sessionState, lockId, false);
                }

            });

            var resetTimeoutTask = Task.Factory.StartNew(() =>
            {
                for (int i = 0; i < Iterations; i++)
                {
                    Subject.ResetItemTimeout(null, SessionId);
                }
            });

            Task.WaitAll(modifyTask, resetTimeoutTask);
        }