Namely STM.NET on MSDN DevLabs

Jul 29, 2009 16:54 GMT  ·  By

Over two months since it released the first Beta build of its developer platform and tools, Microsoft has made available for download the experimental enhanced version of .NET Framework 4 Beta 1. Dubbed STM.NET, the new release of .NET Framework 4 Beta 1 is available via MSDN DevLabs.

S. Somasegar, Senior Vice President, Developer Division, indicated that STM.NET was set up to deliver software transactional memory for programmers using C#. In this regard, the full label of the download is “.NET Framework 4 Beta 1 Enabled to use Software Transactional Memory version 1.0,” revealed Dana Groff, Senior Program Manager Parallel Computing, Transactional Memory.

“STM.NET makes it easy to declare a region of code as atomic. Simply write a function or lambda containing the code that you’d like to transact and pass it to the Atomic.Do delegate. Just like SQL code in a database transaction, this block of code will run as if isolated from other transacted blocks and either it completes successfully or rolls back the complete transaction if there is an error, all without you having to explicitly lock anything,” Somasegar noted.

What does this mean? Well, essentially, developers will be able to leverage the STM.NET version of .NET Framework 4 in order to separate sections of code in accordance with atomic block via delegates or try/catch mechanisms. Of course, it all comes down to multithreaded applications. Microsoft is streamlining the development process of apps with transactional semantics related to memory read and write actions.

“The .NET Framework’s just-in-time compiler rewrites the code within an atomic block to use transactional memory. As a result, a significant amount of .NET code works without changes, including code that uses locks. STM.NET also provides integration with System.Transactions so you can coordinate your atomic memory operations with existing transactional resource managers like MSMQ,” Somasegar added.

Download the .NET Framework enabled for Software Transactional Memory (STM.NET) via this link.

.NET Framework 4.0 Beta 1 is available for download here.