Share via


NSThread.WillBecomeMultiThreadedNotification Property

Definition

Notification constant for WillBecomeMultiThreaded

[Foundation.Advice("Use NSThread.Notifications.ObserveWillBecomeMultiThreaded helper method instead.")]
[Foundation.Field("NSWillBecomeMultiThreadedNotification", "Foundation")]
public static Foundation.NSString WillBecomeMultiThreadedNotification { get; }
[<Foundation.Advice("Use NSThread.Notifications.ObserveWillBecomeMultiThreaded helper method instead.")>]
[<Foundation.Field("NSWillBecomeMultiThreadedNotification", "Foundation")>]
static member WillBecomeMultiThreadedNotification : Foundation.NSString

Property Value

NSString constant, should be used as a token to NSNotificationCenter.

Attributes

Remarks

This constant can be used with NSNotificationCenter to register a listener for this notification. This is an NSString instead of a string, because these values can be used as tokens in some native libraries instead of being used purely for their actual string content. The 'notification' parameter to the callback contains extra information that is specific to the notification type.

To subscribe to this notification, developers can use the convenience ObserveWillBecomeMultiThreaded(NSObject, EventHandler<NSNotificationEventArgs>) or ObserveWillBecomeMultiThreaded(EventHandler<NSNotificationEventArgs>) methods, which offers strongly typed access to the parameters of the notification.

The following example shows how to use the strongly typed NSThread.Notifications class, to take the guesswork out of the available properties in the notification:

//
// Lambda style
//

// listening
notification = NSThread.Notifications.ObserveWillBecomeMultiThreaded ((sender, args) => {
/* Access strongly typed args */
Console.WriteLine ("Notification: {0}", args.Notification);
});

// To stop listening:
notification.Dispose ();

//
// Method style
//
NSObject notification;
void Callback (object sender, NSThread.NSNotificationEventArgs args)
{
    // Access strongly typed args
    Console.WriteLine ("Notification: {0}", args.Notification);
}

void Setup ()
{
    notification = NSThread.Notifications.ObserveWillBecomeMultiThreaded (Callback);
}

void Teardown ()
{
    notification.Dispose ();
}

The following example shows how to use the notification with the DefaultCenter API:

// Lambda style
NSNotificationCenter.DefaultCenter.AddObserver (
    NSThread.WillBecomeMultiThreadedNotification, (notification) => { Console.WriteLine ("Received the notification WillBecomeMultiThreaded", notification); }
);

// Method style
void Callback (NSNotification notification)
{
    Console.WriteLine ("Received the notification WillBecomeMultiThreaded", notification);
}

void Setup ()
{
    NSNotificationCenter.DefaultCenter.AddObserver (NSThread.WillBecomeMultiThreadedNotification, Callback);
}

Applies to