go-ipc: A library for inter-process communication written in pure Go.
This package gives you access to os-native ipc mechanisms on Linux, OSX, FreeBSD, and Windows.
- Pure Go implementation, no cgo is required.
- Works on Linux, OSX, FreeBSD, and Windows (x86 or x86-64).
- Support of the following mechanisms:
- fifo (unix and windows pipes)
- memory mapped files
- shared memory
- system message queues (Linux, FreeBSD, OSX)
- cross-platform priority message queue
- mutexes, rw mutexes
- conditional variables
- Install Go 1.4 or higher.
go get -u bitbucket.org/avd/go-ipc
- Linux, OSX, FreeBSD, and Windows (x86 or x86-64).
- Go 1.4 or higher.
Documentation can be found at
This library is currently beta. The ‘master’ branch is not guaranteed to contain stable code, it is even not guaranteed, that it builds correctly on all platforms. The library uses Semantic Versioning 2.0.0, so it is recommended to checkout the latest release.
Any contributions are welcome. Feel free to:
Before opening a PR, be sure, that:
- your PR has an issue associated with it.
- your commit messages are adequate.
- you added unit tests for your code.
- you gofmt’ed the code.
- you used
gometalinterto check your code.
PR’s containing documentation improvements and tests are especially welcome.
This package is made available under an Apache License 2.0. See LICENSE and NOTICE.