MUSCLE (Multi User Server Client Linking Environment) is an N-way messaging server and networking API. It includes client-side networking APIs for various languages, including C, C++, C#, Delphi, Java, and Python. MUSCLE lets programs communicate over a network via streams of serialized Message objects. The included server program ("muscled") lets its clients message each other and store information in its server-side hierarchical database. The database supports flexible queries via hierarchical wildcarding, and "live" updates via a subscription mechanism.


Note: This release is a major API update. Most programs that used previous versions of the MUSCLE will require some updating to compile under the MUSCLE 4.00 API. In this release, the APIs have changed so that all sockets are passed around as SocketRef objects instead of ints, so that file descriptor leaks are much less likely. Also, the ObjectPool class has been rewritten to use a slab allocation algorithm, and all factory methods now return reference objects instead of pointers.