AbstractInterruptibleChannel 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
可中断通道的基实现类。
[Android.Runtime.Register("java/nio/channels/spi/AbstractInterruptibleChannel", DoNotGenerateAcw=true)]
public abstract class AbstractInterruptibleChannel : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Nio.Channels.IInterruptibleChannel
[<Android.Runtime.Register("java/nio/channels/spi/AbstractInterruptibleChannel", DoNotGenerateAcw=true)>]
type AbstractInterruptibleChannel = class
inherit Object
interface IChannel
interface ICloseable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface IInterruptibleChannel
- 继承
- 派生
- 属性
- 实现
注解
可中断通道的基实现类。
此类封装实现通道异步关闭和中断所需的低级别机械。 具体通道类必须分别调用 #begin begin
可能无限期阻止的 I/O 操作前后调用和 #end end
方法。 为了确保 #end end
始终调用该方法,应在 中 try
使用这些方法... finally
块:
<blockquote>
boolean completed = false;
try {
begin();
completed = ...; // Perform blocking I/O operation
return ...; // Return result
} finally {
end(completed);
}
</blockquote>
completed
该方法的参数#end end
指示 I/O 操作是否实际完成,即它是否具有对调用方可见的任何效果。 例如,对于读取字节的操作,此参数应为 true
仅当某些字节实际传输到调用方的目标缓冲区时才应为。
具体通道类还必须以这样的方式实现 #implCloseChannel implCloseChannel
该方法:如果在通道上的本机 I/O 操作中阻止另一个线程时调用该方法,则该操作将通过引发异常或正常返回来立即返回。 如果线程被中断或被阻止的通道异步关闭,则通道 #end end
的方法将引发相应的异常。
此类执行实现 java.nio.channels.Channel
规范所需的同步。 方法的 #implCloseChannel implCloseChannel
实现不需要与其他可能尝试关闭通道的线程同步。
在 1.4 中添加。
适用于 . 的 java.nio.channels.spi.AbstractInterruptibleChannel
Java 文档
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。
构造函数
AbstractInterruptibleChannel() |
初始化此类的新实例。 |
AbstractInterruptibleChannel(IntPtr, JniHandleOwnership) |
创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。 |
属性
Class |
返回此 |
Handle |
基础 Android 实例的句柄。 (继承自 Object) |
IsOpen |
如果此通道处于打开状态,则返回 true。 |
JniIdentityHashCode |
可中断通道的基实现类。 (继承自 Object) |
JniPeerMembers |
可中断通道的基实现类。 |
PeerReference |
可中断通道的基实现类。 (继承自 Object) |
ThresholdClass |
此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。 |
ThresholdType |
此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。 |
方法
Begin() |
标记可能无限期阻止的 I/O 操作的开头。 |
Clone() |
创建并返回此对象的副本。 (继承自 Object) |
Close() |
关闭此通道。 |
Dispose() |
可中断通道的基实现类。 (继承自 Object) |
Dispose(Boolean) |
可中断通道的基实现类。 (继承自 Object) |
End(Boolean) |
标记可能无限期阻止的 I/O 操作的末尾。 |
Equals(Object) |
指示其他对象是否“等于”此对象。 (继承自 Object) |
GetHashCode() |
返回对象的哈希代码值。 (继承自 Object) |
ImplCloseChannel() |
关闭此通道。 |
JavaFinalize() |
当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。 (继承自 Object) |
Notify() |
唤醒正在等待此对象的监视器的单个线程。 (继承自 Object) |
NotifyAll() |
唤醒正在等待此对象的监视器的所有线程。 (继承自 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
设置 Handle 属性。 (继承自 Object) |
ToArray<T>() |
可中断通道的基实现类。 (继承自 Object) |
ToString() |
返回对象的字符串表示形式。 (继承自 Object) |
UnregisterFromRuntime() |
可中断通道的基实现类。 (继承自 Object) |
Wait() |
使当前线程等待,直到唤醒它,通常是通过 em 通知/em> 或 <em>interrupted</em>。<>< (继承自 Object) |
Wait(Int64, Int32) |
使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。 (继承自 Object) |
Wait(Int64) |
使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted</em>>,或直到经过一定数量的实时。 (继承自 Object) |
显式接口实现
IJavaPeerable.Disposed() |
可中断通道的基实现类。 (继承自 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
可中断通道的基实现类。 (继承自 Object) |
IJavaPeerable.Finalized() |
可中断通道的基实现类。 (继承自 Object) |
IJavaPeerable.JniManagedPeerState |
可中断通道的基实现类。 (继承自 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
可中断通道的基实现类。 (继承自 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
可中断通道的基实现类。 (继承自 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
可中断通道的基实现类。 (继承自 Object) |
扩展方法
JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
JavaCast<TResult>(IJavaObject) |
可中断通道的基实现类。 |
GetJniTypeName(IJavaPeerable) |
可中断通道的基实现类。 |