# BalancerChanged Constructors

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.balancerchanged/)

## BalancerChanged(string, SiloAddress?, QueueId[], QueueId[], IStreamQueueBalancer) {#constructor-string-orleans-runtime-siloaddress-nullable-orleans-streams-queueid-59d3c789}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.balancerchanged/constructors/constructor-string-orleans-runtime-siloaddress-nullable-orleans-streams-queueid-59d3c789/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Streaming/Diagnostics/StreamingEvents.cs#L395-L410)

```csharp
public BalancerChanged(string streamProvider, SiloAddress? siloAddress, QueueId[] previousQueues, QueueId[] currentQueues, IStreamQueueBalancer queueBalancer)
```

Event payload for when queue ownership changes after rebalancing completes.

### Parameters

- `streamProvider` (`string`): The name of the stream provider.
- `siloAddress` (`SiloAddress?`): The address of the silo.
- `previousQueues` (`QueueId[]`): The queues owned before the change.
- `currentQueues` (`QueueId[]`): The queues owned after the change.
- `queueBalancer` (`IStreamQueueBalancer`): The queue balancer instance.
