---
title: "addObserver(_:selector:name:object:)"
framework: foundation
role: symbol
role_heading: Instance Method
path: "foundation/distributednotificationcenter/addobserver(_:selector:name:object:)"
---

# addObserver(_:selector:name:object:)

Adds an entry to the notification center’s dispatch table with an observer, a selector, and an optional notification name and sender.

## Declaration

```swift
func addObserver(_ observer: Any, selector aSelector: Selector, name aName: NSNotification.Name?, object anObject: String?)
```

## Parameters

- `observer`: An object registering as an observer.
- `aSelector`: A selector that the notification center sends notificationObserver to notify when posting the notification.
- `aName`: The name of the notification for which to register the observer; that is, only notifications with this name are delivered to the observer. When nil, the notification center doesn’t use a notification’s name to decide whether to deliver it to the observer.
- `anObject`: The object whose notifications the observer wants to receive; that is, only notifications sent by this sender are delivered to the observer. When nil, the notification center doesn’t use a notification’s sender to decide whether to deliver it to the observer.

## Discussion

Discussion This method calls addObserver(_:selector:name:object:suspensionBehavior:), passing DistributedNotificationCenter.SuspensionBehavior.coalesce for suspensionBehavior.

## See Also

### Managing Observers

- [addObserver(_:selector:name:object:suspensionBehavior:)](foundation/distributednotificationcenter/addobserver(_:selector:name:object:suspensionbehavior:).md)
- [removeObserver(_:name:object:)](foundation/distributednotificationcenter/removeobserver(_:name:object:).md)
