zeromq/clrzmq2 — pull request #34 by fholm (2011-12-10 14:10:18+00:00)
Title: New overload for Socket.Recv

Added an overload to the Socket.Recv method which has the signature `byte[] Recv(byte[] message, out int size, params SendRecvOpt[] flags)` to allow a byte[] to be supplied to the Recv function, and if it has enough space that buffer will be used instead of allocating a new byte[] constantly which causes a lot of pressure on the GC during high frequency messaging.

The supplied `message` parameter will only be used if two conditions are met:

* It's not null
* It's length property is larger then or equal to the size of the message

The size of the read message is also passed out through the `out int size` parameter so that in the case of using a `message` parameter which is larger then the message returned there is a way to find out how many bytes of the array that the message occupies.