voidx 发表于 2010-6-1 16:11:36

求教:基于事件的调度内核 事件的依赖关系 该如何实现?

基于事件的调度内核 事件的依赖关系 该如何实现?

比如说   

如果事件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

该如何实现???

kanprin 发表于 2010-6-1 16:22:14

第三和第四本就是一个矛盾体,应该不可能同时满足吧?

如果只是需要满足上述中的一个依赖,使用信号量(可以多组信号量)完全可以实现这个逻辑。

vimney 发表于 2010-6-1 23:16:45

可以使用状态机实现,每一个限制条件都是一个状态,满足所有状态条件下,再执行动作。
页: [1]
查看完整版本: 求教:基于事件的调度内核 事件的依赖关系 该如何实现?