由于设计中切面切换比较多,事件订阅比较复杂,切来切去有可能那里多订阅,造成多次订阅,重复进入事件处理,一致想着如何判断当前有没有订阅,各种查阅类库,无果,突发奇想,反其道而行之,不去判断,每次取消订阅,然后再订阅,即使没有订阅,取消订阅也不会出错,方法目前可行
如下所示:
BaseData.ServoThread.ServoThreadEvent -= ServoThread_ServoThreadEvent;
BaseData.ServoThread.ServoThreadEvent += ServoThread_ServoThreadEvent;