Will Pittenger - 2014-02-11

I don't yet know how to solve this problem: If external code changes the controlling member, the [volatile] keyword might not be enough. The problem is firing the event and calling destructors/constructors. I see some options:

  1. Have a timer periodically fire to look for changes (volatile unions only)
  2. Lazily look for changes—This would check for changes to the controlling member only before a member was accessed; works best for DASIL
  3. Hope the remote code calls fires the event for us (I hate this)