# IGrainManagementExtension Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.core.internal.igrainmanagementextension/)

## DeactivateOnIdle {#deactivateonidle-048e2f0c}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.core.internal.igrainmanagementextension/methods/deactivateonidle-048e2f0c/)

```csharp
public abstract ValueTask DeactivateOnIdle()
```

Deactivates the current instance once it becomes idle.

### Returns

A `System.Threading.Tasks.Task` which represents the method call.

## MigrateOnIdle {#migrateonidle-5af580b3}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.core.internal.igrainmanagementextension/methods/migrateonidle-5af580b3/)

```csharp
public abstract ValueTask MigrateOnIdle()
```

Attempts to migrate the current instance to a new location once it becomes idle.

### Returns

A `System.Threading.Tasks.Task` which represents the method call.
