> For the complete documentation index, see [llms.txt](https://kinematicsoup.gitbook.io/reactor/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kinematicsoup.gitbook.io/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult-1.md).

# Class ksAsyncResult\<T>

Namespace: [KS.Reactor](/reactor/api-reference/ks.reactor.md)\
Assembly: KSCommon.dll

Handles the tracking and response handling for asynchronous cluster requests that return results.

```csharp
public class ksAsyncResult<T> : ksAsyncResult, IAsyncResult where T : class
```

#### Type Parameters

`T`

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← [ksAsyncResult](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md) ← [ksAsyncResult\<T>](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult-1.md)

#### Implements

[IAsyncResult](https://learn.microsoft.com/dotnet/api/system.iasyncresult)

#### Inherited Members

[ksAsyncResult.AsyncState](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_AsyncState), [ksAsyncResult.AsyncWaitHandle](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_AsyncWaitHandle), [ksAsyncResult.m\_waitHandle](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_m_waitHandle), [ksAsyncResult.CompletedSynchronously](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_CompletedSynchronously), [ksAsyncResult.m\_completedSynchronously](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_m_completedSynchronously), [ksAsyncResult.IsCompleted](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_IsCompleted), [ksAsyncResult.m\_isCompleted](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_m_isCompleted), [ksAsyncResult.Error](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_Error), [ksAsyncResult.m\_error](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_m_error), [ksAsyncResult.OnComplete](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresult.md#KS_Reactor_ksAsyncResult_OnComplete), [object.Equals(object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object\)), [object.Equals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object-system-object\)), [object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode), [object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype), [object.MemberwiseClone()](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone), [object.ReferenceEquals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.referenceequals), [object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)

## Properties

### OnComplete <a href="#ks_reactor_ksasyncresult_1_oncomplete" id="ks_reactor_ksasyncresult_1_oncomplete"></a>

Callback to call when the task completes.

```csharp
public ksAsyncResultHandler<T> OnComplete { get; set; }
```

#### Property Value

[ksAsyncResultHandler](/reactor/api-reference/ks.reactor/ks.reactor.ksasyncresulthandler-1.md)\<T>

### Result <a href="#ks_reactor_ksasyncresult_1_result" id="ks_reactor_ksasyncresult_1_result"></a>

Results.

```csharp
public T Result { get; }
```

#### Property Value

T
