Skip to content
  • Alex Crichton's avatar
    windows: Remove Selector::io · 98f12817
    Alex Crichton authored
    This commit removes the internal hash map from Windows' Selector implementation
    keeping track of what to do after any I/O completes. The "completion callback"
    is now stored right after the OVERLAPPED structure in memory, and unsafe casting
    is done to get back to the original `Arc<T>` and process the I/O event.
    
    Currently this involves vendoring a small copy of `Arc<T>` to ensure that the
    memory layout is guaranteed, but this guarantee could in theory be added to the
    standard library one day.
    
    Closes #243
    98f12817