MUSCLE 4.63
Sponsored Links
MUSCLE 4.63 Ranking & Summary
File size:
Platform:
Any Platform
License:
BSD License
Price:
FREE
Downloads:
11
Date added:
2009-07-19
Publisher:
Jeremy Friesner
MUSCLE 4.63 description
MUSCLE 4.63 is a robust, user-friendly, cross-platform client-server messaging system for dynamic distributed applications that runs under any POSIX-compliant operating system. MUSCLE has been developed, used, and refined as the networking component of BeShare, CueStation and various other audio control applications at Meyer Sound Laboratories for over six years
Major Features:
- Use BMessage-like muscle:Messages under any operating system.
- Send flattened muscle:Messages from one computer to another over TCP streams, eliminating unnecessary compatibility and protocol-versioning hassles.
- Run a "muscled server" on a central machine, and write (or download) client programs to log in to the server and communicate through it. Once logged in, client programs can discover who else is logged in, send muscle:Messages to other clients, and store muscle:Messages in the server's RAM for other clients to download later. Clients can also "subscribe" to selected data on the server, and be automatically notified whenever it changes. Unicast-style, multicast-style, and broadcast-style Message routing are all supported via an intelligent hierarchical pattern-matching routing mechanism. Writing multiplayer games, IRC style chat applications, SETI style distributed calculation apps, or any other type of distributed software is made easy because MUSCLE handles all the dirty work for you!
- Customize the included "muscled server" by defining your own session logic or message-streaming protocol. (Note that this is only necessary for certain specialized applications--the standard server provides sufficient functionality for most things)
- Write your client code in C++, C, C#, Java, Delphi, or Python. Single-threaded and multi-threaded messaging APIs are provided for all of the aforementioned languages.
- Or just use the included message, string, dataIO, hashtable, dequeue, string-tokenizer, reference-count, regular expression and pattern matching parser, and object-pool code by themselves, as handy cross-platform utility classes. All source code is included, and you are free to use and abuse it any way you wish.
Enhancements:
- When compiled with MUSCLE_USE_IPV6 enabled, MUSCLE now does automatic transparent remapping of IPv4-compatible IPv6 addresses into IPv4-mapped IPv6 addresses. This allows MUSCLE servers to be 100% compatible with both IPv4 and IPv6 clients (on platforms that support dual stacks, of course) without any additional effort on the programemr's part.
- Added SetAutomaticIPv4AddressMappingEnabled() and GetAutomaticIPv4AddressMappingEnabled() calls to NetworkUtilityFunctions.{cpp,h}.
- Added CAdd*() and CPrepend*() convenience methods to the Message API, to the common "add value to Message unless it's the default value" idiom quicker and easier to express.
- Added Contains() convenience methods to the String class.
- Added an optional (optRetTotal) argument to SharedUsageLimitProxyMemoryAllocator:GetCurrentMemoryUsage().
- Added a ParseHumanReadableTimeIntervalString() convenience function to MiscUtilityFunctions.cpp.
- Added an static Exists() method to the Directory class.
- Added a PutOrRemove() convenience method to the Hashtable class.
- Added an IsValidIP() function to NetworkUtilityFunctions.{cpp,h}.
- GetNextEventFromInternalThread() now has an optLocation parameter that can be used to find out the IP address and port that a session connected to (or what accepted from).
- The SessionConnected() signals of the QMessageTransceiverThread and QMessageTransceiverHandler classes now include an IPAddressAndPort object indicating what the session connected to.
- The SessionAccepted() signal of the QMessageTransceiverThread class now includes an IPAddressAndPort object indicating where the session was accepted from.
- Added SetAsyncConnectDestination() and GetAsyncConnectDestination() methods to the AbstractReflectSession class.
- Added ToString() methods to the SegmentedStringMatcher and StringMatcher classes.
- SegmentedStringMatcher no longer bothers to allocate a StringMatcher object for clauses that are represented by "*".
-
- Renamed DataNode:CountChildren() to DataNode:GetNumChildren().
- Renamed DataNode:SetMaxKnownChildID() to DataNode:SetMaxKnownChildIDHint().
- Renamed Message:CountNames() to Message:GetNumNames().
- Rewrote the static internal function AdjustValue() in SharedUsageLimitAllocator.cpp to give more informative error output.
- Removed Message:GetConstPointer() since you can use GetPointer() to do the same thing (by assigning a const pointer to the result).
- Documented some methods that were previously not documented.
- Fixed a bug where SharedUsageLimitAllocator: ResetDaemonCounter() could push the cumulative memory counter into negative territory.
- Inet_NtoA was allowing the IPv6-specific "@3" interface-index suffix into IPv4-style address strings.
- SetupSystem.cpp's Muscle_GetCurrentThread() wasn't working properly on 64-bit OS's. Fixed.
MUSCLE 4.63 Screenshot
MUSCLE 4.63 Keywords
MUSCLE
MUSCLE 4.63
DataNode
IPv6
POSIX
IPv4
operating system
messaging system
distributed applications
server
added
system
client
distributed
applications
N-way client
Bookmark MUSCLE 4.63
MUSCLE 4.63 Copyright
WareSeeker periodically updates pricing and software information of MUSCLE 4.63 full version from the publisher, so some information may be slightly out-of-date. You should confirm all information before relying on it. Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future development of MUSCLE 4.63 Edition. Download links are directly from our publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed
Featured Software
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com
Related Information
Version History
Related Software
Spread is an open source toolkit that provides a high performance messaging service. Free Download
Eligante is software for archival, management and browsing of all your communications. Free Download
SCOP is a library for writing distributed applications. Free Download
QuikDic project is a user-friendly Java-based DICT client. Free Download
CycleAtlas is a cycling diary based on a custom road atlas. Free Download
ACE is an object-oriented (OO) C++ framework. Free Download
yaLCD is a LCDproc client that displays some system information. Free Download
libnetshclient is a POSIX/ANSI C library for use in the development of applications that require direct communication... Free Download
Latest Software
Popular Software
Favourite Software