Share via


WorkflowApplication.Unload Yöntem

Tanım

Bir iş akışı örneğini kalıcı hale alır ve kaldırır.

Aşırı Yüklemeler

Unload(TimeSpan)

Belirtilen zaman aşımı aralığını kullanarak bir iş akışı örneğini kalıcı hale getirir ve kaldırır.

Unload()

Bir iş akışı örneğini kalıcı hale alır ve kaldırır.

Açıklamalar

Varsayılan olarak, kaldırma işleminin 30 saniye içinde tamamlanması gerekir veya bir TimeoutException oluşturulur.

İş akışı örneği daha önce kalıcılık özelliğinden yüklendiyse, InstanceStore kalıcılık için iş akışını yüklemek için kullanılan örnek kullanılır. İş akışı oluşturulduysa ve henüz kalıcı hale gelmediyse, bu yöntemi çağırmadan önce bir InstanceStore yapılandırılması gerekir, aksi takdirde bu yöntem çağrıldığında bir InvalidOperationException oluşturulur.

Unload(TimeSpan)

Belirtilen zaman aşımı aralığını kullanarak bir iş akışı örneğini kalıcı hale getirir ve kaldırır.

public:
 void Unload(TimeSpan timeout);
public void Unload (TimeSpan timeout);
member this.Unload : TimeSpan -> unit
Public Sub Unload (timeout As TimeSpan)

Parametreler

timeout
TimeSpan

İşlem iptal edilmeden ve bir TimeoutException atmadan önce kaldırma işleminin tamamlanması gereken aralık.

Örnekler

Bu örnekte iş akışı boştadır ve konak uygulama kullanıcı girişini bekler. Kullanıcı kaldırmayı seçerse çağrılır Unload . Başarılı olursa iş akışı kalıcı olur ve bellekten kaldırılır.

// single interaction with the user. The user enters a string in the console and that
// string is used to resume the ReadLine activity bookmark
static void Interact(WorkflowApplication application, AutoResetEvent resetEvent)
{
    Console.WriteLine("Workflow is ready for input");
    Console.WriteLine("Special commands: 'unload', 'exit'");

    bool done = false;
    while (!done)
    {
        Console.Write("> ");
        string s = Console.ReadLine();
        if (s.Equals("unload"))
        {
            try
            {
                // attempt to unload will fail if the workflow is idle within a NoPersistZone
                application.Unload(TimeSpan.FromSeconds(5));
                done = true;
            }
            catch (TimeoutException e)
            {
                Console.WriteLine(e.Message);
            }
        }
        else if (s.Equals("exit"))
        {
            application.ResumeBookmark("inputBookmark", s);
            done = true;
        }
        else
        {
            application.ResumeBookmark("inputBookmark", s);
        }
    }
    resetEvent.WaitOne();
}

Açıklamalar

İş akışı örneği daha önce kalıcılık özelliğinden yüklendiyse, InstanceStore kalıcılık için iş akışını yüklemek için kullanılan örnek kullanılır. İş akışı oluşturulduysa ve henüz kalıcı hale gelmediyse, bu yöntemi çağırmadan önce bir InstanceStore yapılandırılması gerekir, aksi takdirde bu yöntem çağrıldığında bir InvalidOperationException oluşturulur.

Şunlara uygulanır

Unload()

Bir iş akışı örneğini kalıcı hale alır ve kaldırır.

public:
 void Unload();
public void Unload ();
member this.Unload : unit -> unit
Public Sub Unload ()

Örnekler

Bu örnekte iş akışı boştadır ve konak uygulama kullanıcı girişini bekler. Kullanıcı kaldırmayı seçerse çağrılır Unload . Başarılı olursa iş akışı kalıcı olur ve bellekten kaldırılır.

// single interaction with the user. The user enters a string in the console and that
// string is used to resume the ReadLine activity bookmark
static void Interact(WorkflowApplication application, AutoResetEvent resetEvent)
{
    Console.WriteLine("Workflow is ready for input");
    Console.WriteLine("Special commands: 'unload', 'exit'");

    bool done = false;
    while (!done)
    {
        Console.Write("> ");
        string s = Console.ReadLine();
        if (s.Equals("unload"))
        {
            try
            {
                // attempt to unload will fail if the workflow is idle within a NoPersistZone
                application.Unload(TimeSpan.FromSeconds(5));
                done = true;
            }
            catch (TimeoutException e)
            {
                Console.WriteLine(e.Message);
            }
        }
        else if (s.Equals("exit"))
        {
            application.ResumeBookmark("inputBookmark", s);
            done = true;
        }
        else
        {
            application.ResumeBookmark("inputBookmark", s);
        }
    }
    resetEvent.WaitOne();
}

Açıklamalar

Varsayılan olarak, kaldırma işleminin 30 saniye içinde tamamlanması gerekir veya bir TimeoutException oluşturulur.

İş akışı örneği daha önce kalıcılık özelliğinden yüklendiyse, InstanceStore kalıcılık için iş akışını yüklemek için kullanılan örnek kullanılır. İş akışı oluşturulduysa ve henüz kalıcı hale gelmediyse, bu yöntemi çağırmadan önce bir InstanceStore yapılandırılması gerekir, aksi takdirde bu yöntem çağrıldığında bir InvalidOperationException oluşturulur.

Şunlara uygulanır