Semaphore.Release 方法

定义

重载

Release()

释放许可证,将其返回到信号灯。

Release(Int32)

释放给定数量的许可证,将其返回到信号灯。

Release()

释放许可证,将其返回到信号灯。

[Android.Runtime.Register("release", "()V", "GetReleaseHandler")]
public virtual void Release ();
[<Android.Runtime.Register("release", "()V", "GetReleaseHandler")>]
abstract member Release : unit -> unit
override this.Release : unit -> unit
属性

注解

释放许可证,将其返回到信号灯。

释放许可证,将可用许可证的数量增加一个。 如果任何线程尝试获取许可证,则会选择一个线程,并给出刚刚释放的许可证。 为线程计划目的启用该线程(re)。

没有要求释放许可证的线程必须通过调用 #acquire获取该许可证。 在应用程序中通过编程约定建立正确的信号灯用法。

适用于 . 的 java.util.concurrent.Semaphore.release()Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

Release(Int32)

释放给定数量的许可证,将其返回到信号灯。

[Android.Runtime.Register("release", "(I)V", "GetRelease_IHandler")]
public virtual void Release (int permits);
[<Android.Runtime.Register("release", "(I)V", "GetRelease_IHandler")>]
abstract member Release : int -> unit
override this.Release : int -> unit

参数

permits
Int32

要释放的许可证数

属性

例外

如果 permits 为负数

注解

释放给定数量的许可证,将其返回到信号灯。

释放给定数量的许可证,按该数量增加可用许可证的数量。 如果任何线程尝试获取许可证,则会选择一个线程,并给出刚刚释放的许可证。 如果可用许可证数满足该线程的请求,则为线程计划目的启用该线程(re);否则,线程将等待,直到有足够的许可证可用。 如果满足此线程的请求后仍有可用的许可证,则会将这些许可证转交给尝试获取许可证的其他线程。

没有要求释放许可证的线程必须通过调用 Semaphore#acquire acquire获取该许可证。 在应用程序中通过编程约定建立正确的信号灯用法。

适用于 . 的 java.util.concurrent.Semaphore.release(int)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于