You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In addition, the `SegmentQueue` data structure, which emulates an infinite array with fast removing from the middle, is introduced for storing suspended acquirers in semaphore/mutex/channel algorithms.
Fixes#1088
Copy file name to clipboardExpand all lines: binary-compatibility-validator/reference-public-api/kotlinx-coroutines-core.txt
+13
Original file line number
Diff line number
Diff line change
@@ -994,6 +994,19 @@ public final class kotlinx/coroutines/sync/MutexKt {
994
994
public static synthetic fun withLock$default (Lkotlinx/coroutines/sync/Mutex;Ljava/lang/Object;Lkotlin/jvm/functions/Function0;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
995
995
}
996
996
997
+
public abstract interface class kotlinx/coroutines/sync/Semaphore {
998
+
public abstract fun acquire (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
999
+
public abstract fun getAvailablePermits ()I
1000
+
public abstract fun release ()V
1001
+
public abstract fun tryAcquire ()Z
1002
+
}
1003
+
1004
+
public final class kotlinx/coroutines/sync/SemaphoreKt {
1005
+
public static final fun Semaphore (II)Lkotlinx/coroutines/sync/Semaphore;
1006
+
public static synthetic fun Semaphore$default (IIILjava/lang/Object;)Lkotlinx/coroutines/sync/Semaphore;
1007
+
public static final fun withPermit (Lkotlinx/coroutines/sync/Semaphore;Lkotlin/jvm/functions/Function0;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
1008
+
}
1009
+
997
1010
public final class kotlinx/coroutines/test/TestCoroutineContext : kotlin/coroutines/CoroutineContext {
0 commit comments