关于回调

2021-05-28  本文已影响0人  code_xc

关于回调

几种场景

  1. A函数在执行过程中调用了B函数,而B函数再流程中需要外部A的配合(扩展性),调用B时传入回调接口实现(匿名或者new)。

  2. A函数在执行过程中调用了B函数,而B函数在执行完成后,需要对结果进行处理,一种是返回A后由A处理,第二种是传入处理函数,直接进行调用(偏向于较为简单的处理,且与A的主功能相关性较差,比如打印日志。)。

  3. 调用异步函数,异步状态下,可能无法让B函数返回后处理,则需直接把结果处理方法传入,进行处理。

应用1(阻塞)

A ----> B ----- >C(过程处理)-----> B----------->A (过程或者结果,可通过参数传入)
A ----> B ------>C -----------> A

这个C:

  1. C 与B的没有从属关系,弱关系。
  2. 可能是个扩展点,有多种实现,结果扩展,过程扩展。

应用二(异步回调)

模式

上一篇下一篇

猜你喜欢

热点阅读