trait JSComRun extends JSRun
A JSRun that has a communication channel to the running JS code.
- Alphabetic
- By Inheritance
- JSComRun
- JSRun
- AutoCloseable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def close(): Unit
Stops the run and releases all the resources.
Stops the run and releases all the resources.
This must be called to ensure the run's resources are released.
Whether or not this makes the run fail or not is up to the implementation. However, in the following cases, calling close may not fail the run:
- future is already completed when close is called.
- This is a JSComRun and the event loop inside the VM is empty.
Idempotent, async, nothrow.
- Definition Classes
- JSRun → AutoCloseable
- abstract def future: Future[Unit]
A Future that completes if the run completes.
A Future that completes if the run completes.
The future is failed if the run fails.
Note that a JSRun is not required to ever terminate on it's own. That means even if all code is executed and the event loop is empty, the run may continue to run. As a consequence, it is *not* correct to rely on termination of a JSRun without any external means of stopping it (i.e. calling close).
- Definition Classes
- JSRun
- abstract def send(msg: String): Unit
Sends a message to the JS end.
Sends a message to the JS end.
The
msg
must be a valid UTF-16 string, i.e., it must not contain any unpaired surrogate character. The behavior of the communication channel is unspecified if this requirement is not met.Async, nothrow. See JSEnv#startWithCom for expected message delivery guarantees.
Concrete 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]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- 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()