DispatchSource.ReadMonitor 类

定义

此类型的源监视挂起数据的文件描述符。

public class DispatchSource.ReadMonitor : CoreFoundation.DispatchSource
type DispatchSource.ReadMonitor = class
    inherit DispatchSource
继承
DispatchSource.ReadMonitor
继承
DispatchSource.ReadMonitor

注解

返回 BytesAvailable 的数据是可从描述符读取的估计字节数。 此估计值应视为建议的最小读取缓冲区大小。

无法保证会执行此大小的完整读取。

强烈建议此源类型的用户执行非阻塞 I/O,并处理可能发生的任何截断读取或错误情况。

var stream = File.OpenRead ("Demo.txt");

// The the unix file handle
var safeHandle = stream.SafeFileHandle;
IntPtr descriptor = safeHandle.DangerousGetHandle ();
int fileDescriptor = descriptor.ToInt32 ();

dispatchSource = new DispatchSource.ReadMonitor (fileDescriptor, DispatchQueue.MainQueue);

dispatchSource.SetRegistrationHandler (() => {
    Console.WriteLine ("Read monitor registered");
});

dispatchSource.SetEventHandler (() => {
    Console.WriteLine ("Read monitor: was opened in write mode")
    dispatchSource.Cancel ();
    stream.Close ();
});

dispatchSource.SetCancelHandler (() => {
    Console.WriteLine ("Read monitor cancelled");
});

dispatchSource.Resume ();

构造函数

DispatchSource.ReadMonitor(Int32, DispatchQueue)

创建文件描述符读取监视器。

DispatchSource.ReadMonitor(IntPtr, Boolean)

此类型的源监视挂起数据的文件描述符。

DispatchSource.ReadMonitor(IntPtr)

此类型的源监视挂起数据的文件描述符。

属性

BytesAvailable

可从文件描述符读取的估计字节数。

FileDescriptor

正在监视的文件描述符。

Handle

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
IsCanceled

确定是否取消指定的源。

(继承自 DispatchSource)

方法

Activate()

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
Cancel()

异步取消调度源。

(继承自 DispatchSource)
Check()
已过时.

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
Dispose()

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
Dispose(Boolean)

释放 DispatchSource 对象使用的资源。

(继承自 DispatchSource)
Equals(Object)

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
GetHashCode()

返回此对象的哈希代码

(继承自 DispatchObject)
InitializeHandle(IntPtr)

此类型的源监视挂起数据的文件描述符。

(继承自 NativeObject)
Release()

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
Resume()

恢复调度源。

(继承自 DispatchSource)
Retain()

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
SetCancelHandler(Action)

提供取消处理程序

(继承自 DispatchSource)
SetEventHandler(Action)

指定了在调度源上收到事件时要执行的处理程序。

(继承自 DispatchSource)
SetRegistrationHandler(Action)

提供注册处理程序

(继承自 DispatchSource)
SetTargetQueue(DispatchQueue)

此类型的源监视挂起数据的文件描述符。

(继承自 DispatchObject)
Suspend()

挂起调度源。

(继承自 DispatchSource)

适用于