This is a framework of the ZeroMQ Library ( also known as ZMQ, ØMQ or 0MQ) on Pharo. Using ZMQ lets you create a connection between 2 images via an URL and eventually send messages to one another. You will find the bases of the library, but some methods might be missing as well as some constant options. You'll find in ZMQ-Samples examples on how to use certain methods to guide you.
-
Receiving in a blocking way : To do that, a Threaded Worker needs to be used but every socket type doesn't necessarily support it. In this case, none of the implemented sockets can support multi-threading.
-
Get Socket Option : This method doesn't seem to work, the error obtained is : 'Ressource Temporarily Unavailable' no matter what was tried regarding the type of arguments.
-
Set Socket Option : Works with ByteArrays, so the use of ZMQ_SUBSCRIBE and UNSUBSCRIBE is possible as well as for other options that take same types arguments. There is however the same issue than getsockopt for any other type requested by the method.
-
Library for other OS : For now, the only available library on this repository is zmq.dll which is for Windows. A zmq.so and zmq.dylib would let other OSs users use this repository.
To install the project on your Pharo image you can just execute the following script:
Metacello new
baseline: 'PharoZeroMQ';
repository: 'github://OpenSmock/PharoZeroMQ:main/src';
load.
No dependencies.
This project is licensed under the MIT License - see the LICENSE file for details.