Open switer opened 9 years ago
首先要理清的是,waitFor 实现的是同步等待回调(与事件无关,只是事件处理回调方法在等待调用),容易误认为是等待异步事件触发。
waitFor
回调方法
waitFor 的调用方式是:waitFor(callbackToken),,在回调方法执行过程中调用。 callbackToken是具体某个回调方法的 id,调用 waitFor 的时候,会获取并调用该 id 对应的方法(仅当该方法的pending状态为false)
执行过程
callbackToken
Dispatcher每次分发后,在调用前会把回调方法的pending状态设置为true,避免回调方法被重复执行
保证回调方法的串行执行顺序
概念:
首先要理清的是,
waitFor
实现的是同步等待回调(与事件无关,只是事件处理回调方法
在等待调用),容易误认为是等待异步事件触发。原理:
waitFor 的调用方式是:waitFor(callbackToken),,在回调方法
执行过程
中调用。callbackToken
是具体某个回调方法的 id,调用 waitFor 的时候,会获取并调用该 id 对应的方法(仅当该方法的pending状态为false)Dispatcher每次分发后,在调用前会把回调方法的pending状态设置为true,避免
回调方法
被重复执行应用场景:
保证回调方法的串行执行顺序