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
中所有任务完成。