# DefaultGrainActivator Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.runtime.defaultgrainactivator/)

## CreateInstance(IGrainContext) {#createinstance-orleans-runtime-igraincontext-1237296e}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.runtime.defaultgrainactivator/methods/createinstance-orleans-runtime-igraincontext-1237296e/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Runtime/Activation/DefaultGrainActivator.cs#L33-L42)

```csharp
public object CreateInstance(IGrainContext context)
```

Returns a new grain instance for the provided grain context.

### Parameters

- `context` (`IGrainContext`): The grain context.

### Returns

The grain instance.

## DisposeInstance(IGrainContext, object) {#disposeinstance-orleans-runtime-igraincontext-object-38ffcccc}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.runtime.defaultgrainactivator/methods/disposeinstance-orleans-runtime-igraincontext-object-38ffcccc/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Runtime/Activation/DefaultGrainActivator.cs#L50-L56)

```csharp
public ValueTask DisposeInstance(IGrainContext context, object instance)
```

Disposes the provided grain instance which is associated with the provided grain context.

### Parameters

- `context` (`IGrainContext`): The grain context.
- `instance` (`object`): The grain instance.

### Returns

A `System.Threading.Tasks.ValueTask` representing the work performed.
