當前位置: 首頁>>代碼示例>>C#>>正文


C# Task.Suspend方法代碼示例

本文整理匯總了C#中System.Threading.Task.Suspend方法的典型用法代碼示例。如果您正苦於以下問題:C# Task.Suspend方法的具體用法?C# Task.Suspend怎麽用?C# Task.Suspend使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在System.Threading.Task的用法示例。


在下文中一共展示了Task.Suspend方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: TestSuspendedToReversedActualOwner

        public void TestSuspendedToReversedActualOwner()
        {
            IdentityId actualId = new IdentityId();
            ILoggingService loggingService = SetupLoggerMock(new List<TaskHistoryEvent>());
            Task task = new Task(
                         new TaskId(), TaskStatus.Reserved, string.Empty,
                         string.Empty, Priority.Normal, false,
                         DateTime.UtcNow, new IdentityId().GetIdentity(),
                         DateTime.UtcNow, null, actualId.GetIdentity())
            {
                LoggingService = loggingService
            };
            IPrincipal actualOwner = new ClaimsPrincipal(actualId.GetIdentity());
            Thread.CurrentPrincipal = actualOwner;
            task.Suspend();
            Assert.AreEqual(TaskStatus.Suspended, task.Status);
            Assert.AreEqual(actualId.GetIdentity(), task.ActualOwner);
            task.Resume();
            Assert.AreEqual(TaskStatus.Reserved, task.Status);
            Assert.AreEqual(actualId.GetIdentity(), task.ActualOwner);

            Assert.IsNotNull(task.History);
            Assert.AreEqual(2, task.History.Count());
            TaskHistoryEvent history = task.History.ElementAt(0);
            Assert.IsNotNull(history);
            Assert.AreEqual(TaskStatus.Reserved, history.OldStatus);
            Assert.AreEqual(TaskStatus.Suspended, history.NewStatus);
            Assert.AreEqual(actualId, history.UserId);
            history = task.History.ElementAt(1);
            Assert.IsNotNull(history);
            Assert.AreEqual(TaskStatus.Suspended, history.OldStatus);
            Assert.AreEqual(TaskStatus.Reserved, history.NewStatus);
            Assert.AreEqual(actualId, history.UserId);
        }
開發者ID:KlaudWerk,項目名稱:WSHumanTask,代碼行數:34,代碼來源:TaskStateTransitionsTest.cs


注:本文中的System.Threading.Task.Suspend方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。