---
title: "Class TaskManager | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Common/TaskManager/"
---

# Class TaskManager

> **Inheritance:** `System.Object` -> TaskManager

###### **Namespace**: [Aurigma.DesignAtoms.Common](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Common.md)

###### **Assembly**: Aurigma.DesignAtoms.dll

```csharp title="Syntax"
public class TaskManager
```

## Inherited Members

* `System.Object.ToString`
* `System.Object.Equals(System.Object)`
* `System.Object.Equals(System.Object,System.Object)`
* `System.Object.ReferenceEquals(System.Object,System.Object)`
* `System.Object.GetHashCode`
* `System.Object.GetType`
* `System.Object.MemberwiseClone`

## Constructors

### TaskManager

```csharp
public TaskManager()
```

## Methods

### GetOrAddTask

```csharp
public Task<Stream> GetOrAddTask(string key, Func<Task<Stream>> createTaskAction)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.String` | *key* |  |
| `System.Func<System.Threading.Tasks.Task<System.IO.Stream>>` | *createTaskAction* |  |

##### Returns

`System.Threading.Tasks.Task<System.IO.Stream>`

### GetOrAddTask&lt;T&gt;

```csharp
public Task<T> GetOrAddTask<T>(string key, Func<Task<T>> createTaskAction)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.String` | *key* |  |
| `System.Func<System.Threading.Tasks.Task<<T>>>` | *createTaskAction* |  |

##### Returns

`System.Threading.Tasks.Task<<T>>`
