Constructeur : LongRunningTask(action, executingNode)

Une tâche
LongRunningTask
exécute un code lié au temps ou lié au processeur.
LongRunningTask(Action action, IUANode executingNode);

Arguments

action
(Action)
Méthode ou expression lambda à exécuter.
executingNode
(IUANode)
Nœud dans lequel le code s’exécute.

Exemple

Une tâche
myLongRunningTask
traite un fichier CSV à l’aide de la méthode
ProcessCsvFile()
. Cette méthode prend la tâche elle-même en tant qu’argument, dont l’état est vérifié à l’aide de la propriété
IsCancellationRequested
après avoir lu chaque ligne du fichier CSV. De cette manière, la tâche peut être annulée.
using System.IO; // For using the StreamReader public class RuntimeNetLogic1 : BaseNetLogic { public override void Start() { // Insert code to be executed when the user-defined logic is started myLongRunningTask = new LongRunningTask(ProcessCsvFile, LogicObject); myLongRunningTask.Start(); } public override void Stop() { // Insert code to be executed when the user-defined logic is stopped myLongRunningTask.Dispose(); } private void ProcessCsvFile(LongRunningTask task) { // example method to read lines from a csv file using (var reader = new StreamReader("
path/to/csv/file.csv
")) { while (!reader.EndOfStream) { // Check whether task cancellation has been requested if (task.IsCancellationRequested) { // Properly handle task cancellation here return; } string line = reader.ReadLine(); // Process line } } } private LongRunningTask myLongRunningTask; }
Fournir une réponse
Vous avez des questions ou des commentaires sur cette documentation ? Veuillez envoyer vos commentaires ici.