Domanda

ti vedi # librerie C che consentono di sequenziare una serie di azioni, vale a dire. ogni azione eseguire quando la precedente ha terminato, o meglio ancora, dopo il verificarsi di un intervallo di tempo specifico.

Grazie.

È stato utile?

Soluzione

http://msdn.microsoft.com/en-us/ biblioteca / dd537609.aspx

  

Il metodo di Task.ContinueWith let   si specifica un compito per essere avviato quando   il completamento del compito antecedente.

Esempio

var task = Task.Factory.StartNew(() => GetFileData())
                                       .ContinueWith((x) => Analyze(x.Result))
                                       .ContinueWith((y) => Summarize(y.Result));

Altri suggerimenti

quartz.net . per sincronizzare azioni, utilizzare ad es. eventi, waithandles , Monitor.Wait() e Monitor.Pulse() ...

altrimenti si può gestire un insieme di azioni, ad esempio

var methods = new List<Func>
{
    FooMethod1,
    FooMethod2
}
foreach (var method in methods)
{
    method.Invoke();
}

, ma questo ha senso solo se non si dispone di un moderatore metodo (elaborazione sequenziale) o ai vostri metodi non dovrebbe sapere gli uni degli altri.

Per le operazioni pianificate siete alla ricerca di una libreria che supporta cron posti di lavoro. Ecco quello che ho utilizzato in un progetto.

http: // blog .bobcravens.com / 2009/10 / un-evento-based-cron-programma-lavoro-in-c /

Un sacco di librerie esistenti. Ho trovato molti sono ricchi di funzionalità e un po 'pesante.

Spero che questo aiuti.

Bob

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top