Skip to content

microsoft/go-winio

Folders and files

NameName
Last commit message
Last commit date
Apr 22, 2021
Apr 22, 2021
Apr 21, 2021
Feb 11, 2021
Feb 11, 2021
Feb 11, 2021
Apr 6, 2016
Feb 9, 2021
Jan 31, 2016
Apr 21, 2021
Aug 2, 2017
Feb 10, 2021
Aug 23, 2018
Feb 10, 2021
Jun 1, 2019
Apr 22, 2021
Apr 22, 2021
Feb 9, 2021
Feb 9, 2021
Jan 21, 2021
Nov 23, 2020
Feb 10, 2021
Apr 5, 2021
Feb 10, 2021
Apr 12, 2016
Oct 6, 2016
Feb 10, 2021
Feb 11, 2021
Apr 22, 2021

Repository files navigation

go-winio Build Status

This repository contains utilities for efficiently performing Win32 IO operations in Go. Currently, this is focused on accessing named pipes and other file handles, and for using named pipes as a net transport.

This code relies on IO completion ports to avoid blocking IO on system threads, allowing Go to reuse the thread to schedule another goroutine. This limits support to Windows Vista and newer operating systems. This is similar to the implementation of network sockets in Go's net package.

Please see the LICENSE file for licensing information.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Thanks to natefinch for the inspiration for this library. See https://github.com/natefinch/npipe for another named pipe implementation.