Jetlang 提供了一个高性能的Java线程库,该库是 JDK 1.5 中的 java.util.concurrent 包的补充,可用于基于并发消息机制的应用。该类库不提供远程的消息功能,其设计的宗旨是实现一个内存中的消息传递机制:
主要特点有:
- All messages to a particular Fiber are delivered sequentially. Components can easily keep state without synchronizing data access or worrying about thread races.
- Single Fiber interface that can be backed by a dedicated thread or a thread pool.
- Supports single or multiple subscribers for messages.
- Subscriptions for single events or event batching
- Single or recurring event scheduling
- High performance design optimized for low latency and high scalability
- Publishing is thread safe, allowing easy integration with other threading models.
- Low Lock Contention – Minimizing lock contention is critical for performance. Other concurrency solutions are limited by a single lock typically on a central thread pool or message queue. Jetlang is optimized for low lock contention. Without a central bottleneck, performance easily scales to the needs of the application.
Fiber fiber =
new
ThreadFiber();
fiber.start();
final CountDownLatch latch =
new
CountDownLatch(2);
Runnable toRun =
new
Runnable(){
public
void
run(){
latch.countDown();
}
};
//enqueue runnable for execution
fiber.execute(toRun);
//repeat to trigger latch a 2nd time
fiber.execute(toRun);
latch.await(10, TimeUnit.SECONDS);
//shutdown thread
fiber.dispose();
项目主页:http://www.open-open.com/lib/view/home/1360159040111
时间: 2024-08-05 12:20:14