# ObserverManager&lt;TIdentity, TObserver&gt;.Notify(Func&lt;TObserver, Task&gt;, Func&lt;TObserver, bool&gt;)

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.utilities.observermanager-2/) | [Methods](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.utilities.observermanager-2/methods/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core/Utils/ObserverManager.cs#L209-L244)

```csharp
public Task ObserverManager<TIdentity, Notify(Func<TObserver, Task> notification, Func<TObserver, bool>? predicate = null)
```

Notifies all observers.

### Parameters

- `notification` (`Func<TObserver, Task>`): The notification delegate to call on each observer.
- `predicate` (`Func<TObserver, bool>`): The predicate used to select observers to notify.

### Returns

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