WorkflowInstance.EnqueueItemOnIdle 메서드

정의

워크플로가 유휴 상태일 때 지정된 워크플로 큐에 메시지를 게시합니다. EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object) 는 워크플로가 유휴 지점에 도달할 때까지 대기하고 워크플로 스케줄러가 유휴 상태인지 확인한 후 큐에 넣기(즉, 활성 작업이 실행되고 있지 않음)입니다.

public:
 void EnqueueItemOnIdle(IComparable ^ queueName, System::Object ^ item, System::Workflow::Runtime::IPendingWork ^ pendingWork, System::Object ^ workItem);
public void EnqueueItemOnIdle(IComparable queueName, object item, System.Workflow.Runtime.IPendingWork pendingWork, object workItem);
member this.EnqueueItemOnIdle : IComparable * obj * System.Workflow.Runtime.IPendingWork * obj -> unit
Public Sub EnqueueItemOnIdle (queueName As IComparable, item As Object, pendingWork As IPendingWork, workItem As Object)

매개 변수

queueName
IComparable

WorkflowQueue의 이름입니다.

item
Object

큐에 추가할 개체입니다.

pendingWork
IPendingWork

IPendingWork 전송될 때 item 보낸 사람에게 알림을 보낼 수 있는 값입니다.

workItem
Object

메서드에 전달할 개체입니다 IPendingWork .

예외

queueName null 참조입니다(Visual Basic Nothing).

워크플로 런타임 엔진이 실행되고 있지 않습니다.

-또는-

워크플로 인스턴스가 일시 중단됩니다.

-또는-

지정한 WorkflowQueue 항목이 queueName 없습니다.

-또는-

WorkflowQueue 지정한 queueName 값을 사용할 수 없습니다.

설명

워크플로 인스턴스가 유휴 상태가 될 때까지 기다린 다음 지정된 item인스턴스로 보냅니다WorkflowQueue. 워크플로 인스턴스가 일시 중단된 동안 호출 EnqueueItemOnIdle 하는 경우 워크플로 런타임 엔진은 을 throw합니다 InvalidOperationException. 메시지가 배달될 때 알림을 받도록 하려면 서비스에서 구현 IPendingWork 하고 개체와 개체workItemIPendingWorkEnqueueItem 전달할 수 있습니다. 이러한 알림을 원하지 않는 경우 NothingpendingWork 대한 null 참조(Visual Basic workItem)를 전달할 수 있습니다.

상태 컴퓨터 워크플로에서 이 메서드를 사용하는 경우 "큐 '{0}'가 사용하도록 설정되지 않았습니다."라는 메시지가 포함된 예외가 발생할 수 있습니다. 이는 상태 컴퓨터의 현재 상태가 특정 이벤트를 처리하는 방법을 모를 때 발생합니다. 예를 들어 현재 상태가 아닌 일부 상태에 큐 ''EventDrivenActivity로 표시되는 해당 상태가 포함된 HandleExternalEventActivity{0} 경우입니다.

적용 대상