new Promise((resolv, reject)-> {
asycMethodWithCallback(/*回调方法 */ (val)-> {
resolv.accept(val);
})
});
new Promise<Integer>((resolv, reject)-> {
asycMethodWithCallback1(/* 回调方法 */ (val)-> {
resolv.accept(val); // assume val is 10
})
}).then((preValue) -> {
return new Promise<Integer>((resolv, reject)-> {
asycMethodWithCallback2(/* 回调方法 */ (val)-> {
resolv.accept(val + 1); // val is 10
});
})
}).then((preValue) -> {
return new Promise<Integer>((resolv, reject)-> {
asycMethodWithCallback3(/* 回调方法 */ (val)-> {
resolv.accept(val); // val is 11
})
});
})
Promise<List<T>> Promise.all(Iterator<Promise<T>>)
组合多个Promise,组合成一个Promise<List<T>>,它将在所有异步任务完成后转为fulfilled状态。
Promise<T> Promise.race(Iterator<Promise<T>>)
组合多个Promise,组合成一个Promise<T>,它将在任一异步任务完成后转为fulfilled状态。
long setTimeout(Consumer, value, timeDelay)
在 timeDelay毫秒后,将值 value 传入 consumer 消费。该方法返回一个 long 类型的 id ,可根据这个 id 取消定时任务。
clearTimeout(id)
根据任务id,取消定时任务。(采用懒删除机制,只是使任务定时到后不执行)
long setInterval(Consumer, value, interval)
任务将以 interval 毫秒为间隔进行调用。返回任务id值。
clearInterval(id)
取消任务。
Promise<T> asycTimeout(val, timeDealy)
返回一个Promise,将在timeDealy毫秒后转为fulfilled状态,并传递 val。
waitShutdown()
关闭Timer,等待Timer中所有任务完成。