用 Java1.7 实现了一下 Promise

2016-03-15 11:37:34 +08:00
 hackingwu

最近在用 JavaScript 写服务端代码,感觉前端异步编程可以应用于后端,所有的 IO 操作如果没有前后依赖关系的可以并发执行。前端的 Promise 规范了这种异步编程,感觉很不错,于是用 Java1.7 实现了一下 Promise 常用的接口。代码放到 github 上了 https://github.com/hackingwu/Java-Promise 。欢迎大家指教,互相学习。
静态方法:
Promise.all(Promise... promises)
Promise.race(Promise... promises)
Promise.resolve(value)
Promise.reject(value)
实例方法:
promise.then(OnFulfill onFulfill, OnReject onReject)
promise.then(OnFulfill onFulfill)
promise.Catch(OnReject onReject)

2980 次点击
所在节点    编程
4 条回复
SoloCompany
2016-03-15 22:05:09 +08:00
java6 有 Future 了啊
hackingwu
2016-03-16 08:58:45 +08:00
@SoloCompany 是用 future 来实现的
SoloCompany
2016-03-16 12:10:06 +08:00
@hackingwu java7 没有 lambda , promise 的可用性就差了很多; java8 有 lambda 相对好一些但没有真正意义的函数指针只有 SMI , kotlin 的 lambda 灵活性要强的多,有原生函数指针的支持,更接近 javascript ,所以如果要构建类似的 API , kotlin 应该是更合适的平台
hackingwu
2016-03-16 15:38:33 +08:00
@SoloCompany 谢谢!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/263597

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX