Wie kann ich einer Aufgabe in TPL einen Namen zuweisen?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie kann ich einer Aufgabe in TPL einen Namen zuweisen?

Post by Anonymous »

Ich werde viele Aufgaben verwenden, die in meiner Anwendung ausgeführt werden. Jede Reihe von Aufgaben wird aus irgendeinem Grund ausgeführt. Ich möchte diese Aufgaben benennen, damit ich sie beim Betrachten des Fensters „Parallele Aufgaben“ leicht erkennen kann.

Bedenken Sie aus einer anderen Perspektive, dass ich Aufgaben auf Framework-Ebene verwende, um eine Liste zu füllen. Eine Entwicklerin, die mein Framework verwendet, verwendet auch Aufgaben für ihren Job. Wenn sie sich das Fenster „Parallele Aufgaben“ ansieht, wird sie einige Aufgaben finden, von denen sie keine Ahnung hat. Ich möchte Aufgaben benennen, damit sie die Framework-Aufgaben von ihren Aufgaben unterscheiden kann.

Es wäre sehr praktisch, wenn es eine solche API gäbe:

Code: Select all

var task = new Task(action, "Growth calculation task")
oder vielleicht:

Code: Select all

var task = Task.Factory.StartNew(action, "Populating the datagrid")
oder sogar während der Arbeit mit Parallel.ForEach

Code: Select all

Parallel.ForEach(list, action, "Salary Calculation Task"
Ist es möglich, einer Aufgabe einen Namen zu geben?

Kann man ‍‍‍ geben?

Code: Select all

Parallel.ForEach
eine Benennungsstruktur (vielleicht mit einem Lambda), damit Aufgaben mit dieser Benennung erstellt werden?

Gibt es irgendwo eine solche API, die mir fehlt?



Ich habe auch versucht, eine geerbte Aufgabe zu verwenden, um deren ToString() zu überschreiben. Aber leider verwendet das Parallel Tasks-Fenster ToString() nicht!

Code: Select all

class NamedTask : Task
{
private string TaskName { get; set; }
public NamedTask(Action action, string taskName):base(action)
{
TaskName = taskName;
}

public override string ToString()
{
return TaskName;
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post