class Switch extends AnyRef
An atomic switch that can be either on or off
- Alphabetic
- By Inheritance
- Switch
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Switch(startAsOn: Boolean = false)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def fold[T](on: => T)(off: => T): T
Executes the provided callbacks depending on if the switch is either on or off waiting for any pending changes to happen before (locking) Be careful of longrunning or blocking within the provided action as it can lead to deadlocks or bad performance
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def ifOff(action: => Unit): Boolean
Executes the provided action and returns if the action was executed or not, if the switch is IMMEDIATELY off (i.e.
Executes the provided action and returns if the action was executed or not, if the switch is IMMEDIATELY off (i.e. no lock involved)
- def ifOffYield[T](action: => T): Option[T]
Executes the provided action and returns its value if the switch is IMMEDIATELY off (i.e.
Executes the provided action and returns its value if the switch is IMMEDIATELY off (i.e. no lock involved)
- def ifOn(action: => Unit): Boolean
Executes the provided action and returns if the action was executed or not, if the switch is IMMEDIATELY on (i.e.
Executes the provided action and returns if the action was executed or not, if the switch is IMMEDIATELY on (i.e. no lock involved)
- def ifOnYield[T](action: => T): Option[T]
Executes the provided action and returns its value if the switch is IMMEDIATELY on (i.e.
Executes the provided action and returns its value if the switch is IMMEDIATELY on (i.e. no lock involved)
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isOff: Boolean
Returns whether the switch is IMMEDIATELY off (no locking)
- def isOn: Boolean
Returns whether the switch is IMMEDIATELY on (no locking)
- def locked[T](code: => T): T
Executes the given code while holding this switch’s lock, i.e.
Executes the given code while holding this switch’s lock, i.e. protected from concurrent modification of the switch status.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def switchOff: Boolean
Switches the switch off (if on), uses locking
- def switchOff(action: => Unit): Boolean
Executes the provided action if the lock is on under a lock, so be _very_ careful with longrunning/blocking operations in it Only executes the action if the switch is on, and switches it off immediately after obtaining the lock Will switch it back on if the provided action throws an exception
- def switchOn: Boolean
Switches the switch on (if off), uses locking
- def switchOn(action: => Unit): Boolean
Executes the provided action if the lock is off under a lock, so be _very_ careful with longrunning/blocking operations in it Only executes the action if the switch is off, and switches it on immediately after obtaining the lock Will switch it back off if the provided action throws an exception
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def transcend(from: Boolean, action: => Unit): Boolean
- Attributes
- protected
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def whileOff(action: => Unit): Boolean
Executes the provided action and returns if the action was executed or not, if the switch is off, waiting for any pending changes to happen before (locking) Be careful of longrunning or blocking within the provided action as it can lead to deadlocks or bad performance
- def whileOffYield[T](action: => T): Option[T]
Executes the provided action and returns its value if the switch is off, waiting for any pending changes to happen before (locking) Be careful of longrunning or blocking within the provided action as it can lead to deadlocks or bad performance
- def whileOn(action: => Unit): Boolean
Executes the provided action and returns if the action was executed or not, if the switch is on, waiting for any pending changes to happen before (locking) Be careful of longrunning or blocking within the provided action as it can lead to deadlocks or bad performance
- def whileOnYield[T](action: => T): Option[T]
Executes the provided action and returns its value if the switch is on, waiting for any pending changes to happen before (locking) Be careful of longrunning or blocking within the provided action as it can lead to deadlocks or bad performance
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)