- Actually, I don't think anything could make multithreading less difficulty for a developer, short of ancient Aztec magic. You know, because the Aztecs were just awesome with the whole concept of hardware threads and "Tony" units.
Unable to tap into whatever the Aztecs knew, Microsoft has come up with its own solution. Well, for the Xbox 360 anyway. Included in the August 2007 SDK for the console was a new library, called XMCore.
Microsoft's Pete Isensee detailed the features of the new library at Game Connect last weekend. To put it simply, XMCore will make "lock-free programming" easier for game developers.
So what the hell is lock-free programming?
While there's multiple ways to approach multithreading, one method Microsoft recommends is called "message-based concurrency". Using message-based concurrency, each thread owns its own data, and instead of threads accessing common pools of data, they send chunks of information between themselves.
The problem is, in order to write to a piece of data, a thread has to "lock" it, to prevent other threads from tainting it while the work is being done. Managing data locks can be a massive headache for a developer, and, despite the performance benefits and scalability of message-based concurrency, it's just too tricky and time...