# ILogConsistencyProtocolParticipant Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.eventsourcing/orleans.eventsourcing.ilogconsistencyprotocolparticipant/)

## DeactivateProtocolParticipant {#deactivateprotocolparticipant-f48b8005}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.eventsourcing/orleans.eventsourcing.ilogconsistencyprotocolparticipant/methods/deactivateprotocolparticipant-f48b8005/)

```csharp
public abstract Task DeactivateProtocolParticipant()
```

Called immediately after the user-level OnDeactivateAsync, on same scheduler.

## PostActivateProtocolParticipant {#postactivateprotocolparticipant-3fecc176}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.eventsourcing/orleans.eventsourcing.ilogconsistencyprotocolparticipant/methods/postactivateprotocolparticipant-3fecc176/)

```csharp
public abstract Task PostActivateProtocolParticipant()
```

Called immediately after the user-level OnActivateAsync, on same scheduler.

## PreActivateProtocolParticipant {#preactivateprotocolparticipant-7f7476a9}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.eventsourcing/orleans.eventsourcing.ilogconsistencyprotocolparticipant/methods/preactivateprotocolparticipant-7f7476a9/)

```csharp
public abstract Task PreActivateProtocolParticipant()
```

Called immediately before the user-level OnActivateAsync, on same scheduler.
