org.dbunit.util.concurrent |
|
Java Source File Name | Type | Comment |
BoundedBuffer.java | Class | Efficient array-based bounded buffer class.
Adapted from CPJ, chapter 8, which describes design.
[ Introduction to this package. |
BoundedChannel.java | Interface | A channel that is known to have a capacity, signifying
that put operations may block when the
capacity is reached. |
BoundedLinkedQueue.java | Class | A bounded variant of
LinkedQueue
class. |
Channel.java | Interface | Main interface for buffers, queues, pipes, conduits, etc.
A Channel represents anything that you can put items
into and take them out of. |
DefaultChannelCapacity.java | Class | A utility class to set the default capacity of
BoundedChannel
implementations that otherwise require a capacity argument
See Also: BoundedChannel See Also: [ Introduction to this package. |
Executor.java | Interface | Interface for objects that execute Runnables,
as well as various objects that can be wrapped
as Runnables.
The main reason to use Executor throughout a program or
subsystem is to provide flexibility: You can easily
change from using thread-per-task to using pools or
queuing, without needing to change most of your code that
generates tasks.
The general intent is that execution be asynchronous,
or at least independent of the caller. |
LinkedNode.java | Class | |
LinkedQueue.java | Class | A linked list based channel implementation.
The algorithm avoids contention between puts
and takes when the queue is not empty. |
PropertyChangeMulticaster.java | Class | This class is interoperable with java.beans.PropertyChangeSupport,
but relies on a streamlined copy-on-write scheme similar to
that used in CopyOnWriteArrayList. |
Puttable.java | Interface | This interface exists to enable stricter type checking
for channels. |
Semaphore.java | Class | Base class for counting semaphores.
Conceptually, a semaphore maintains a set of permits.
Each acquire() blocks if necessary
until a permit is available, and then takes it. |
SemaphoreControlledChannel.java | Class | Abstract class for channels that use Semaphores to
control puts and takes.
[ Introduction to this package. |
Slot.java | Class | A one-slot buffer, using semaphores to control access.
Slots are usually more efficient and controllable than using other
bounded buffers implementations with capacity of 1.
Among other applications, Slots can be convenient in token-passing
designs: Here. |
Sync.java | Interface | Main interface for locks, gates, and conditions.
Sync objects isolate waiting and notification for particular
logical states, resource availability, events, and the like that are
shared across multiple threads. |
SynchronizedInt.java | Class | A class useful for offloading synch for int instance variables.
[ Introduction to this package. |
SynchronizedVariable.java | Class | Base class for simple, small classes
maintaining single values that are always accessed
and updated under synchronization. |
SynchronousChannel.java | Class | A rendezvous channel, similar to those used in CSP and Ada. |
Takable.java | Interface | This interface exists to enable stricter type checking
for channels. |
TimeoutException.java | Class | Thrown by synchronization classes that report
timeouts via exceptions. |