Microsoft Download Center Archive

.NET Framework 4 Beta 1 enabled to use Software Transactional Memory (STM.NET Version 1.0)

  • Published:
  • Version: 1.0
  • Category: Document
  • Language: English

MSDN DevLab of Software Transactional Memory

  • Software Transactional Memory (STM.NET) is a mechanism for efficient isolation of shared state. The programmer demarcates a region of code as operating within a transaction that is “atomic” and “isolated” from other transacted code running concurrently.Transactional memory is considered a promising technology by the academic community and is repeatedly brought up as a welcome technology for the upcoming wave of applications which scale on modern multi-core hardware. The goal is to be able to exploit concurrency by using components written by experts and consumed by application programmers who can then compose together these components using STM. Transactional memory provides an easy-to-use mechanism to do this safely.STM is not a 1:1 lock replacement and provides more functionality than critical sections, reader-writer locks, and other traditional synchronization methods. This functionality has overhead; the hope is that the scalability, productivity, and deadlock freedom gained by this mechanism outweigh the degradation in serial performance.This is an experimental release of the .NET Framework that allows C# programmers to try out this technology, specifically a particular implementation of STM. We are interested in your feedback on your experience using this programming model. Is it valuable and easy-to-use? Does it provide enough functionality? Are you willing to pay with serial performance losses to gain greater scalability? Our implementation is integrated with the framework and tools, it has been extended to provide coexistence with locks, interoperate with traditional transactional technologies, and safely work with existing code.


Status: Live

This download is still available on The downloads below will come directly from the Microsoft Download Center.

FileSHA1 HashSize
STM_User_Guide.pdfe1c5cd58cc75329e2a0a1369bf02a60d8969e5a72.38 MB

File sizes and hashes are retrieved from the Wayback Machine’s indexes. They may not match the latest versions of files hosted on Microsoft servers.

System Requirements

Operating Systems: Windows Vista, Windows XP

  • Windows Xp x32Windows Vista x32Visual Studio 2008

Installation Instructions

  • STM.NET cannot be installed on a system with Visual Studio 2010 or an with an existing .NET Framework V4.1. Download and Install the .NET Framework enabled to use Software Transactional Memory. (dotNetFx40_STMNet_10_x86.exe)2. Download and Install the samples, documentation, and configuration files necessary to use Visual Studio 2008 with .NET Framework installed in the previous step.(STM.NET_v1_Samples_and_Documents.msi)3. Read the STM Programming Guide to get started with STM.NET.(STM_USer_Guide.pdf)

Related Resources