Freigeben über


NSFileHandle.ReadCompletionNotification Eigenschaft

Definition

Benachrichtigungskonstante für ReadCompletion

[Foundation.Advice("Use NSFileHandle.Notifications.ObserveReadCompletion helper method instead.")]
[Foundation.Field("NSFileHandleReadCompletionNotification", "Foundation")]
public static Foundation.NSString ReadCompletionNotification { get; }
member this.ReadCompletionNotification : Foundation.NSString

Eigenschaftswert

Die NSString-Konstante sollte als Token für NSNotificationCenter verwendet werden.

Attribute

Hinweise

Diese Konstante kann mit dem NSNotificationCenter verwendet werden, um einen Listener für diese Benachrichtigung zu registrieren. Dies ist ein NSString anstelle einer Zeichenfolge, da diese Werte in einigen nativen Bibliotheken als Token verwendet werden können, anstatt nur für ihren tatsächlichen Zeichenfolgeninhalt verwendet zu werden. Der Parameter "notification" für den Rückruf enthält zusätzliche Informationen, die für den Benachrichtigungstyp spezifisch sind.

Um diese Benachrichtigung zu abonnieren, können Entwickler die bequeme NSFileHandle.Notifications.ObserveReadCompletion -Methode verwenden, die stark typisierten Zugriff auf die Parameter der Benachrichtigung bietet.

Das folgende Beispiel zeigt, wie Sie die stark typisierte Notifications-Klasse verwenden, um die verfügbaren Eigenschaften in der Benachrichtigung zu entmutigen:

//
// Lambda style
//

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

    Console.WriteLine ("AvailableData", args.AvailableData);
    Console.WriteLine ("UnixErrorCode", args.UnixErrorCode);
});

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

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

    Console.WriteLine ("AvailableData", args.AvailableData);
    Console.WriteLine ("UnixErrorCode", args.UnixErrorCode);
}

void Setup ()
{
    notification = NSFileHandle.Notifications.ObserveReadCompletion (Callback);
}

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

Das folgende Beispiel zeigt, wie Sie die Benachrichtigung mit der DefaultCenter-API verwenden:

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


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

void Setup ()
{
    NSNotificationCenter.DefaultCenter.AddObserver (NSFileHandle.ReadCompletionNotification, Callback);
}

Gilt für: