WorkStealingQueue

class WorkStealingQueue<E>(parallelism: Int) : AbstractQueue<E> , BlockingQueue<E>

WIP – The intent is to use this queue to store tasks in a way that a ThreadPoolExecutor can fetch them in a mostly-priority order, but with a preference for keeping work local to a thread if the other threads already have their own work to do.

Constructors

Link copied to clipboard
fun WorkStealingQueue(parallelism: Int)

Functions

Link copied to clipboard
abstract override fun add(element: E): Boolean
Link copied to clipboard
abstract fun addAll(elements: Collection<E>): Boolean
Link copied to clipboard
abstract fun clear()
Link copied to clipboard
abstract operator override fun contains(element: E): Boolean
Link copied to clipboard
abstract fun containsAll(elements: Collection<E>): Boolean
Link copied to clipboard
open override fun drainTo(c: MutableCollection<in E>): Int
open override fun drainTo(c: MutableCollection<in E>, maxElements: Int): Int
Link copied to clipboard
abstract fun element(): E
Link copied to clipboard
open fun forEach(p0: Consumer<in E>)
Link copied to clipboard
abstract fun isEmpty(): Boolean
Link copied to clipboard
open operator override fun iterator(): MutableIterator<E>
Link copied to clipboard
open override fun offer(element: E): Boolean
open override fun offer(    e: E,     timeout: Long,     unit: TimeUnit): Boolean
Link copied to clipboard
open fun parallelStream(): Stream<E>
Link copied to clipboard
open override fun peek(): E?
Link copied to clipboard
open override fun poll(): E?
open override fun poll(timeout: Long, unit: TimeUnit): E?
Link copied to clipboard
open override fun put(e: E)
Link copied to clipboard
open override fun remainingCapacity(): Int
Link copied to clipboard
abstract fun remove(): E
open override fun remove(element: E): Boolean
Link copied to clipboard
abstract fun removeAll(elements: Collection<E>): Boolean
Link copied to clipboard
open fun removeIf(p0: Predicate<in E>): Boolean
Link copied to clipboard
abstract fun retainAll(elements: Collection<E>): Boolean
Link copied to clipboard
open override fun spliterator(): Spliterator<E>
Link copied to clipboard
open fun stream(): Stream<E>
Link copied to clipboard
open override fun take(): E
Link copied to clipboard
open fun toArray(): Array<Any>
open fun <T : Any> toArray(p0: Array<T>): Array<T>
open fun <T : Any> toArray(p0: IntFunction<Array<T>>): Array<T>

Properties

Link copied to clipboard
open override val size: Int