1

我想知道是否有人对如何在 .Net Micro Framework 中正确执行事件有一些指示和/或很好的指南。

我已经获得了一个 Netduino,并且正在围绕各种组件制作一个小型包装框架,我正试图让它成为一种事件驱动的。开始按照我习惯的方式进行操作,但发现Microsoft.SPOT命名空间中有几个类和接口似乎与事件相关,而我之前没有使用过它们中的任何一个。例如:

  • 调度员
  • DispatcherFrame
  • 调度程序对象
  • 调度员操作
  • 调度器定时器
  • EventHandlersStore
  • 事件路由
  • 事件接收器
  • 事件监听器
  • 事件处理器
  • 路由事件

还有几个。我如何正确使用所有这些?我应该使用它们吗?

作为一个例子,我想在照片/光传感器周围创建一个包装器,只要光度发生变化,它就会引发一个事件。为此(我想?)我需要轮询模拟引脚的值,看看它是否改变。我可以很简单地通过在单独的线程上触发观察者或类似的东西来做到这一点。但是还有其他方法我应该这样做吗?例如,我想我不应该每个传感器都有一个线程,因为这可能会变得很多,而且这里的资源非常有限?

4

1 回答 1

1

就像在其他 .net 版本中一样使用事件。

声明和使用事件。

如果您希望订阅者使用自定义方法签名,请声明并使用委托。

如果您想遵循 (sender, args) 模式等,请构建自定义事件参数。

使用事件处理程序或内联函数订阅/取消订阅事件。

底线是微框架事件没有什么特别之处。您拥有其他版本中的所有内容,因此只需专注于为您的消费者制作一个好的 api,就像您通常会做的那样。

于 2012-12-26T22:44:15.790 回答