Qual è la differenza tra l'utilizzo WorkflowInvoker e WorkflowApplication?
-
29-09-2019 - |
Domanda
e ho notato quando uso Invoker e chiamo invoker.Invoke () direttamente l'interfaccia grafica non verrà aggiornata durante l'esecuzione. Quali altre differenze ci sono?
Soluzione
Esecuzione di un flusso di lavoro utilizzando il WorklfowInvoker è una chiamata sincrona. Così si blocca fino a quando il flusso di lavoro è in esecuzione. Esso è destinato per brevi worklfows esercizio e Unit Testing delle attività e non supporta il flusso di lavoro Instance Store.
Il WorklfowApplication è asincrono ed esegue workflow come un'attività asincrona, quindi l'unica Run orari esecuzione e ritorna. Su quali filo esegue dipende dalla SynchronizationContext utilizzata, il valore di default utilizza il ThreadPool. Gli aggiornamenti dello stato, come il flusso di lavoro completando vengono effettuate attraverso i callback impostati. Supporta anche il Workflow Instance Store.