aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/com/jogamp/common/av/AudioSink.java
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2023-05-17 16:26:56 +0200
committerSven Gothel <[email protected]>2023-05-17 16:26:56 +0200
commit37977b4fe48cdc6be6f8e4938b5c79371d527a5d (patch)
tree131f38b038bf7f03c9ae39ab884abb61a454eca4 /src/java/com/jogamp/common/av/AudioSink.java
parent270172bcbd91f96d4a38a3d73e23d744f57a25b8 (diff)
AudioSink: Add exclusive locking allowing implementations to short-cut for less management overhead (-> OpenAL + Synthesizer)
Diffstat (limited to 'src/java/com/jogamp/common/av/AudioSink.java')
-rw-r--r--src/java/com/jogamp/common/av/AudioSink.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/java/com/jogamp/common/av/AudioSink.java b/src/java/com/jogamp/common/av/AudioSink.java
index 3973d33..d41e05b 100644
--- a/src/java/com/jogamp/common/av/AudioSink.java
+++ b/src/java/com/jogamp/common/av/AudioSink.java
@@ -242,6 +242,18 @@ public interface AudioSink {
}
/**
+ * Exclusively locks this instance for the calling thread, if implementation utilizes locking.
+ * @see #unlockExclusive()
+ */
+ public void lockExclusive();
+
+ /**
+ * Releases the exclusive lock for the calling thread, if implementation utilizes locking.
+ * @see #lockExclusive()
+ */
+ public void unlockExclusive();
+
+ /**
* Returns the <code>available state</code> of this instance.
* <p>
* The <code>available state</code> is affected by this instance