README.md in sysvmq-0.0.1 vs README.md in sysvmq-0.1.0

- old
+ new

@@ -1,10 +1,24 @@ # sysvmq -`sysvmq` is a C extension that wraps SysV IPC Message Queues. Only compatible -with MRI 2.0 and 2.1 currently. +`sysvmq` is a C extension that wraps SysV IPC Message Queues. It's similar to +the [POSIX MQ Ruby wrapper](https://github.com/Sirupsen/posix-mqueue). Message +queues are handy for interprocess communication where you want to be able to +take down either endpoint easily. The main disadvantage of SysV message queues +over POSIX MQs (on Linux) is that SysV doesn't expose a file descriptor to do +e.g. `select(2)` on. +## Installation + +Add `sysvm` to your Gemfile. + +`gem 'sysvmq'` + +Currently known to work on Linux (MRI >= 2.0). + +## Usage + ```ruby # Create a message queue with a 1024 byte buffer. require 'sysvmq' mq = SysVMQ.new(0xDEADC0DE, 1024, SysVMQ::IPC_CREAT | 0666) @@ -19,8 +33,12 @@ ensure # Delete queue mq.destroy ``` -## Installation +## Todo - gem 'sysv-mq', github: "Sirupsen/sysvmq" # until published to rubygems +* Explain messages types +* Add named params for flags (e.g. `mq.receive(:front, blocking: false)`) + instead of ORing flags directly. +* Add `IPC_INFO` on Linux +* Add all of `IPC_STAT`