A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://scala-lang.org/api/3.x/scala/concurrent/BlockContext.html below:

BlockContext

scala.concurrent.BlockContext

See theBlockContext companion object

A context to be notified by scala.concurrent.blocking when a thread is about to block. In effect this trait provides the implementation for scala.concurrent.Await. scala.concurrent.Await.result and scala.concurrent.Await.ready locates an instance of BlockContext by first looking for one provided through BlockContext.withBlockContext and failing that, checking whether Thread.currentThread is an instance of BlockContext. So a thread pool can have its java.lang.Thread instances implement BlockContext. There's a default BlockContext used if the thread doesn't implement BlockContext.

Typically, you'll want to chain to the previous BlockContext, like this:

val oldContext = BlockContext.current
val myContext = new BlockContext {
  override def blockOn[T](thunk: => T)(implicit permission: CanAwait): T = {
    // you'd have code here doing whatever you need to do
    // when the thread is about to block.
    // Then you'd chain to the previous context:
    oldContext.blockOn(thunk)
  }
}
BlockContext.withBlockContext(myContext) {
  // then this block runs with myContext as the handler
  // for scala.concurrent.blocking
}
Attributes
Companion
object
Source
BlockContext.scala
Graph
Supertypes
Members list

Used internally by the framework; Designates (and eventually executes) a thunk which potentially blocks the calling java.lang.Thread.

Used internally by the framework; Designates (and eventually executes) a thunk which potentially blocks the calling java.lang.Thread.

Clients must use scala.concurrent.blocking or scala.concurrent.Await instead.

In implementations of this method it is RECOMMENDED to first check if permission is null and if it is, throw an IllegalArgumentException.

Attributes
Throws
Source
BlockContext.scala

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4