hackingwu
V2EX  ›  编程

用 Java1.7 实现了一下 Promise

  •  
  •   hackingwu · Mar 15, 2016 · 3383 views
    This topic created in 3712 days ago, the information mentioned may be changed or developed.

    最近在用 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)

    4 replies    2016-03-16 15:38:33 +08:00
    SoloCompany
        1
    SoloCompany  
       Mar 15, 2016
    java6 有 Future 了啊
    hackingwu
        2
    hackingwu  
    OP
       Mar 16, 2016 via iPhone
    @SoloCompany 是用 future 来实现的
    SoloCompany
        3
    SoloCompany  
       Mar 16, 2016
    @hackingwu java7 没有 lambda , promise 的可用性就差了很多; java8 有 lambda 相对好一些但没有真正意义的函数指针只有 SMI , kotlin 的 lambda 灵活性要强的多,有原生函数指针的支持,更接近 javascript ,所以如果要构建类似的 API , kotlin 应该是更合适的平台
    hackingwu
        4
    hackingwu  
    OP
       Mar 16, 2016
    @SoloCompany 谢谢!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5780 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 06:30 · PVG 14:30 · LAX 23:30 · JFK 02:30
    ♥ Do have faith in what you're doing.