diff --git a/Sources/FoundationEssentials/NotificationCenter/MainActorMessage.swift b/Sources/FoundationEssentials/NotificationCenter/MainActorMessage.swift index 66e80d9eb..536b3ece3 100644 --- a/Sources/FoundationEssentials/NotificationCenter/MainActorMessage.swift +++ b/Sources/FoundationEssentials/NotificationCenter/MainActorMessage.swift @@ -225,7 +225,13 @@ extension NotificationCenter { } }) #else - return ObservationToken(center: self, token: _addObserver(Message.name, object: subject, using: observer)) + nonisolated(unsafe) let observer = observer + return ObservationToken(center: self, token: _addObserver(Message.name, object: subject) { (message: Message) in + nonisolated(unsafe) let message = message + MainActor.assumeIsolated { + observer(message) + } + }) #endif }