wintypes: Implement IMap::{Lookup, HasKey, Insert} for IPropertySet.

IMap is implemented on top of a rb_tree guarded with an SRWLOCK. We need the map to be thread safe as:

  • PropertySet is marked as IAgileObject.
  • I plan to use PropertySet as the backing store for DeviceInformation::Properties. These properties can be updated by apps after receiving an Updated event from the device watcher with DeviceInformation::Update. The current DeviceWatcher implementation dispatches the event delegates for Update from a separate thread.

Merge request reports

Loading