| // This package provides utilities for efficiently performing Win32 IO operations in Go. | |
| // Currently, this package is provides support for genreal IO and management of | |
| // - named pipes | |
| // - files | |
| // - [Hyper-V sockets] | |
| // | |
| // This code is similar to Go's [net] package, and uses IO completion ports to avoid | |
| // blocking IO on system threads, allowing Go to reuse the thread to schedule other goroutines. | |
| // | |
| // This limits support to Windows Vista and newer operating systems. | |
| // | |
| // Additionally, this package provides support for: | |
| // - creating and managing GUIDs | |
| // - writing to [ETW] | |
| // - opening and manageing VHDs | |
| // - parsing [Windows Image files] | |
| // - auto-generating Win32 API code | |
| // | |
| // [Hyper-V sockets]: https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/make-integration-service | |
| // [ETW]: https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/event-tracing-for-windows--etw- | |
| // [Windows Image files]: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/work-with-windows-images | |
| package winio |