Jetlang

Java高性能线程库
授权协议 未知
开发语言 Java
所属分类 程序开发、 其他开发相关
软件类型 开源软件
地区 不详
投 递 者 苏浩瀚
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

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.
示例代码:
// start thread backed receiver. 
// Lighweight fibers can also be created using a thread pool
Fiber receiver = new ThreadFiber();
receiver
.start();

// create java.util.concurrent.CountDownLatch to notify when message arrives
final CountDownLatch latch = new CountDownLatch(1);

// create channel to message between threads
Channel<String> channel = new MemoryChannel<String>();
Callback<String> onMsg = new Callback<String>() {
   
public void onMessage(String message) {
       
//open latch
        latch
.countDown();
   
}
};
//add subscription for message on receiver thread
channel
.subscribe(receiver, onMsg);

//publish message to receive thread. the publish method is thread safe.
channel
.publish("Hello");

//wait for receiving thread to receive message
latch
.await(10, TimeUnit.SECONDS);

//shutdown thread
receiver
.dispose();
  • 软件简介 Jetlang 提供了一个高性能的Java线程库,该库是 JDK 1.5 中的 java.util.concurrent 包的补充,可用于基于并发消息机制的应用。该类库不提供远程的消息功能,其设计的宗旨是实现一个内存中的消息传递机制: 主要特点有: All messages to a particular Fiber are delivered sequentially. Compone

  • Java高性能线程库 Jetlang 发布时间:2013-02-03 14:59:32来源:红联作者:empast Jetlang 提供了一个高性能的Java线程库,该库是 JDK 1.5 中的 java.util.concurrent 包的补充,可用于基于并发消息机制的应用。该类库不提供远程的消息功能,其设计的宗旨是实现一个内存中的消息传递机制: 主要特点有: All messages to a

  • Jetlang基于Retlang提供高性能的Java线程库包,可作为JDK的java.util.concurrent库包补充实现,它类似Scala中Actor一样,是基于消息的高并发库包。 这个库包不提供远程消息能力,设计用于基于单台机器内存in-memory的高性能并发: 1.所有消息将顺序递交到一个特殊的纤程Fiber(类似ErLang和GO的轻量线程),库包组件将无需任何同步锁访问和不会产生

  • http://www.javaworld.com/article/2078020/java-concurrency/understanding-actor-concurrency-part-2-actors-on-the-jvm.html   Finally, we look at the Jetlang library, which technically does not provide an

  • Alex Tkachman用一个测试基准比较Scala actor、Jetlang和Groovy++消息传递的性能差异,并解释了Scala actor比较慢的原因。 该基准用来测量消息发送和接收的的平均速度。我们选择了众所周知的线程环测试基准的一个变体 有10000个actors,0..9999 当object接收一个消息后将其转发给下一个object 测试一开始,向头500个对象发送字符串“Hi

  • Note New version of Jetserver is called Nadron and is in a new netty 4 branch of this same repo. JetServer is a java nio based server specifically designed for mutliplayer games. It supports UDP and T

 相关资料
  • 1、自我介绍 2、项目介绍 3、主要做了什么,为什么这样做 4、模型结构 5、与原算法比较,优势和不足 6、在学校有没有学过机器学习深度学习相关课程 7、滤波器(不会) 8、怎样部署(不会) 9、评价指标 10、倾向于做什么方向 11、线性回归与逻辑回归 12、朴素贝叶斯 13、代码题:单位园随机采样 #摩尔线程##摩尔线程智能科技(北京)有限责任公司#

  • 问题内容: 所以基本上我创建了这个程序,为redis添加了值。到目前为止,我得到了这个时机: 但是,当我尝试运行多个线程时: 我用set ot得到这个: 为什么我的程序在有 更多 线程的情况下运行 速度较慢 ? __ 我正在运行Linux Ubuntu 11.04和Python 2.7.1。 问题答案: 结果取决于Python的实现,cpython的GIL阻止了并行计算比顺序计算更快。 考虑使用该

  • 我对最新gcc中基于pthread和Ubuntu开发环境的线程的互斥锁和消息传递的性能感兴趣。一个很好的通用问题是用餐哲学家,每个哲学家使用lh和rh叉子与左右手邻居共享。我把哲学家的数量增加到99个,让我的四核处理器保持忙碌。 上面的代码允许我的哲学家尝试抓住他们需要的两个叉子。 上面的代码监控我的哲学家的进食或思考进度,这取决于他们是否能够保留这两个叉子。 在所有哲学家尝试自由选择后,等待所有

  • 我使用StringRedisTemplate向redis添加条目,如下所示。 我必须显式添加线程安全功能吗?我在StringRedisTemplate或RedisTemplate源中没有看到任何synchronize关键字。

  • 在学习了并发之后,我一直计划在项目中使用并发。现在我没有在多线程或并发上做太多工作,所以决定在实际项目中使用它之前学习并进行一个简单的概念验证。 以下是我尝试过的两个例子: 现在,在每种方法运行了20多次之后进行分析 第一次并发平均需要451毫秒 第二个无并发的平均时间为290毫秒 现在我了解到这取决于配置、操作系统、版本(java7)和处理器。但这两种方法都是一样的。还了解到,当计算量很大时,并

  • 我有一个并发哈希映射,我需要在其中更新循环中的值。虽然,并发映射本身是线程安全的,但添加操作不是原子的,因此我需要添加同步块。如果我在这里错了,请纠正我。 问题是是否可以使用锁等更有效地同步此代码?我正在从阻塞队列中获取值。 这是代码:

  • 我正在用docx4j做一些测试。我需要做的是将复杂的Word文档(2-3页的文本、表格、项目符号列表、图像)转换成XHTML。

  • 我在我的应用程序中创建了第二个DataSource。 我用HikariDataSource创建了它,因为它断开了连接,所以出现了问题。 现在它没有断开,但是很慢 我的配置如下: 爪哇: 有人能告诉我如何提高绩效吗。 它们是表的小查询,分页约为25条记录,需要4秒钟。 我观察到,查询一个select的200条记录需要46秒,而查询只需要2秒。 以前,它们是千分之一秒。 非常感谢。