postNotificationName(_:object:userInfo:deliverImmediately:)
Creates a notification with information and an immediate-delivery specifier, and posts it to the receiver.
Declaration
func postNotificationName(_ name: NSNotification.Name, object: String?, userInfo: [AnyHashable : Any]? = nil, deliverImmediately: Bool)Parameters
- name:
Name of the notification to post. Must not be
nil. - object:
Sender of the notification. May be
nil. - userInfo:
Dictionary containing additional information. May be
nil. - deliverImmediately:
Specifies when to deliver the notification. When False, the receiver delivers notifications to their observers according to the suspended-notification behavior specified in the corresponding dispatch table entry. When True, the receiver delivers the notification immediately to its observers.
Discussion
This is the preferred method for posting notifications.
The notificationInfo dictionary is serialized as a property list, so it can be passed to another task. In the receiving task, it is deserialized back into a dictionary. This serialization imposes some restrictions on the objects that can be placed in the notificationInfo dictionary. See XML Property Lists for details.