Пример #1
0
 public void EnqueueItem(IComparable queueName, Object item, IPendingWork pendingWork, Object workItem)
 {
     using (new WorkflowTraceTransfer(this.InstanceId))
     {
         while (true)
         {
             WorkflowExecutor executor = _runtime.Load(this);
             try
             {
                 executor.EnqueueItem(queueName, item, pendingWork, workItem);
                 break;
             }
             catch (InvalidOperationException)
             {
                 if (executor.IsInstanceValid)
                 {
                     throw;
                 }
             }
         }
     }
 }