The win32PipeListener.Close() function attempts to write to an unbuffered channel that has no reader unless someone calls the Accept() function. As a result, the call to Close() hangs indefinitely. The stack trace from the goroutine that is hanging can look like this:
The
win32PipeListener.Close()
function attempts to write to an unbuffered channel that has no reader unless someone calls theAccept()
function. As a result, the call toClose()
hangs indefinitely. The stack trace from the goroutine that is hanging can look like this: