求教:基于事件的调度内核 事件的依赖关系 该如何实现?
基于事件的调度内核 事件的依赖关系 该如何实现?比如说
如果事件A依赖事件B,那么当事件A触发后,并不会立即执行,而是要等到事件B执行后,A才能执行。
执行顺序:B->A
如果事件A依赖事件B,事件B依赖事件C,那么当事件A触发后,并不会立即执行,而是要等到事件B执行,而事件B执行又要等到事件C执行,
执行顺序:C->B->A
如果事件A依赖(事件B和事件C ),那么当事件A触发后,并不会立即执行,而是要等到事件B,C都执行后,A才能执行。
执行顺序:B->C->A 或者 C->B->A
如果事件A依赖(事件B或事件C ),那么当事件A触发后,并不会立即执行,而是要等到事件B或者C,其中一个执行后,A才能执行。
执行顺序:B->A 或者 C->A
该如何实现??? 第三和第四本就是一个矛盾体,应该不可能同时满足吧?
如果只是需要满足上述中的一个依赖,使用信号量(可以多组信号量)完全可以实现这个逻辑。 可以使用状态机实现,每一个限制条件都是一个状态,满足所有状态条件下,再执行动作。
页:
[1]