I hope everyone saw Soma’s announcement that STM.NET is now live on MSDN Devlabs!
We have been talking about software transactional memory for some time now. Last year my Ch9 interview I mentioned we were looking to work with customers under a non-disclosure agreement; but now you can experiment with STM.NET without a NDA! Yesterday, we released the “.NET Framework 4 Beta 1 Enabled to use Software Transactional Memory V1.0”. Since I am out of breath just reading that name, let’s call it “STM.NET”. You can download it from here. If you are not ready to experiment, you might be interested in our programming guide; it discusses programming using STM in depth and it’s a great first step.
What we have produced is a .NET Framework where you can delineate a section of code as running within an atomic block using either a delegate (Atomic.Do) or through a try/catch mechanism. The latter is the way we were able to provide this functionality without changing every .NET language or create new concepts in IL.
In addition to the basic atomic block we have added a lot of functionality:
As a small team, we accomplished a lot but the whole of .NET is huge so there are areas where STM is currently not supported for instance:
We expect there might be some other limitations of the release that we didn’t discover in our test pass. We will discuss these on our MSDN Forum.
Please check out STM.NET on the MSDN Devlabs today. Tell us what you think on our forum.