WEB开发网
开发学院软件开发Java Java 开发 2.0: Kilim 简介 阅读

Java 开发 2.0: Kilim 简介

 2010-05-21 00:00:00 来源:WEB开发网   
核心提示: Mailbox 可以接受任何类型的 “消息”,例如,Java 开发 2.0: Kilim 简介(3),Mailbox 类型接受 java.lang.Object,Task 可以发送 String 消息或者甚至自定义的消息类型,而且它们既可以采用阻塞方式,也可以采用非阻塞方

Mailbox 可以接受任何类型的 “消息”。例如,Mailbox 类型接受 java.lang.Object。Task 可以发送 String 消息或者甚至自定义的消息类型,这完全取决于您自己。

在 Kilim 中,所有实体都通过方法签名捆绑在一起,如果您需要同时执行几项操作,可以在一个方法中指定该行为,扩大该方法的签名以抛出 Pausable。因此,在 Kilim 中创建并发类就像在 Java 中实现 Runnable 或扩展 Thread 一样简单。只是使用 Runnable 或 Thread 的附加实体(比如关键字 synchronized)更少了。

最后,Kilim 的魔力是由一个称为 weaver 的后期进程来实现的,该进程转换类的字节码。包含 Pausablethrows 字句的方法在运行时由一个调度程序处理,该调度程序包含在 Kilim 库中。该调度程序处理有限数量的内核线程。可以利用此工具来处理更多的轻量型线程,这可以最大限度地提高上下文切换和启动的速度。每个线程的堆栈都是自动管理的。

在本质上,Kilim 使创建并发进程变得轻松而简单:只需从 Kilim 的 Task 类型进行扩展并实现 execute 方法。编译新创建的支持并发性的类之后,对其运行 Kilim 的 weaver,您会实现显著的性能提升!

Kilim 最初是一种外来语言,但它带来了巨大的回报。角色模型(以及后来的 Kilim)使编写依赖于类似对象的异步操作对象变得更加简单和安全。您可以 使用 Java 的基本线程模型进行同样的操作(比如扩展 Thread),但这更具挑战性,因为它会将您带回锁和同步的世界中。简而言之,将您的并发编程模型转换为角色使多线程应用程序更容易编码。

Kilim 实战

在 Kilim 的角色模型中,消息通过 Mailbox 在进程之间传送。在许多情况下,您可以将 Mailbox 看作队列。进程可以将一些项加入邮箱中,也可以从邮箱获取一些项,而且它们既可以采用阻塞方式,也可以采用非阻塞方式来这样做(阻塞对象是底层 Kilim 实现的轻量型进程,而不是内核线程)。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Java 开发 Kilim

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接