成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

.NET 4.0 Beta 1新增STM特性概覽

開發 后端
.NET 4.0 Beta 1中新增的STM.NET是一種可以高效隔離共享狀態的機制。開發人員可以將一段代碼標記為“原子”事務,并與其它并行運行的事務代碼“隔離”開來。

微軟發布了.NET 4.0 Beta 1的一個單獨的新版本,其中包含了STM.NET,也就是Software Transactional Memory。通常我們使用基于鎖的同步機制來控制對共享內存的訪問,STM則是鎖之外的另一種選擇。

微軟將STM.NET定義為:

Software Transactional Memory(STM.NET)是一種可以高效隔離共享狀態的機制。開發人員可以將一段代碼標記為“原子”事務,并與其它并行運行的事務代碼“隔離”開來。

內存事務(Transactional memory)在學術界被認為是一項有前途的技術,并且在當前利用多核硬件提高程序擴展性的大潮中,也做為一項受歡迎的技術被反復提及,其目的是使應用程 序開發人員可以利用STM的并發功能,將那些由專家開發的組件組合在一起,內存事務使這變得簡單而安全。

STM使用樂觀并發機制來控制對共享內存的訪問,在線程可以安全的修改共享數據前,不會一直阻塞線程,而是在線程訪問共享數據時,將讀寫操作記錄在日志 中。然后,它會檢查是否有另一個線程正好在同一時刻訪問共享數據。如果沒有,這些改變將會被提交并***生效;否則,事務將會被取消,所有的修改都將撤銷。

STM.NET使用Atomic.Do()將一段代碼標記為一個事務:

  1. Atomic.Do(()=> {  
  2.    <statememts>  
  3. });  

STM與鎖機制一樣會導致系統性能降低,這是因為它需要維護讀寫日志,而且提交時會花費額外的時間。一些人認為STM比鎖更容易使用,因此在易用性上的優勢足以抵消性能上的降低。在一項名為《事務編程真的容易么?》的研究中,來自奧斯丁德克薩斯大學的Christopher J. Rossbach、Owen S. Hofmann和 Emmett Witchel比較了STM與鎖的學習和開發過程:

一般來說,內存事務比簡單的鎖需要更多的開發時間,但少于細致的鎖和條件同步。

我們發現在更復雜的情況下,簡單的鎖和事務所用的時間要少于細致的鎖。這體現了事務的初衷,在需要多個鎖的情況下,減少編碼、調試和鎖順序的復雜性。

這項研究總結道

這證明了即使新手在理解事務方面可能存在困難,但事務編程比高性能的鎖更安全。對學生的主觀評測顯示,他們認為事務內存比簡單的鎖要難一些,但是比細致的 鎖和條件同步簡單。然而在學生寫的代碼中,同步錯誤的比率呈現出戲劇化的結果。對于相似的編程問題,使用事務比使用鎖更容易得到正確的結果。

系統配置需求:Visual Studio 2008,Windows Installer 3.1以上, Internet Explorer 5.01以上。目前STM.NET只支持C#。

 

【編輯推薦】

  1. 微軟.Net 4.0實驗版更新 預計明春發布正式版
  2. .NET 4.0 Beta 1將為PLINQ帶來生機?
  3. .NET 4.0中WCF服務配置的簡化與改進
  4. .NET 4.0內存映射文件詳解
  5. 詳解.NET 4.0中的契約式編程
責任編輯:佚名 來源: infoq
相關推薦

2009-05-08 10:09:30

.NET4.0PLINQ

2009-08-10 18:16:33

ICustomQuer.NET 4.0

2009-12-28 10:04:59

.NET 4.0數組

2009-08-03 15:25:09

STM.NET

2009-06-22 09:36:06

WF 4.0 beta跟蹤配置

2013-02-26 09:42:09

RailsRuby

2009-12-30 10:21:36

.NET 4.0

2009-06-16 10:02:12

2010-10-12 09:52:02

ASP.NET MVC

2009-06-15 10:20:47

WF 4.0 Beta跟蹤機制

2009-09-04 16:28:05

ASP.NET 4.0

2009-10-26 09:16:08

BigInteger類

2009-07-20 16:44:56

ASP.NET MVCIValueProvi

2009-06-17 10:51:58

WF4.0規則引擎

2009-10-28 09:23:27

WF4.0 Beta2

2009-11-24 15:49:48

.NET 4.0 Be

2010-01-05 09:26:13

.NET 4.0

2013-07-17 13:48:56

Chrome 29瀏覽器

2010-05-10 15:59:12

Fedora 13

2013-03-19 09:37:15

openSUSE 12
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人在线视频免费看 | 亚洲一区二区三区久久 | 成人伊人网 | 欧美成人专区 | 国产精品久久av | av一级一片 | 99精品免费久久久久久久久日本 | 国产精品久久久久久久久动漫 | 在线看日韩 | 中文字幕不卡视频在线观看 | 日韩在线大片 | 日操操夜操操 | 伊人免费在线观看高清 | 91在线看| 成人无遮挡毛片免费看 | 中文字幕久久久 | 99re在线视频 | 欧美一卡二卡在线观看 | 91在线视频观看免费 | 亚洲一区二区三区视频免费观看 | av乱码 | 一区二区三区在线 | 国产视频第一页 | 国产一极毛片 | 五月婷婷 六月丁香 | 日韩网站在线观看 | 精品videossex高潮汇编 | 雨宫琴音一区二区在线 | 亚洲精品九九 | 在线观看av中文字幕 | 亚洲欧美在线一区 | 亚洲欧美日韩在线 | 日批免费在线观看 | 99久久婷婷 | 久久免费视频1 | 午夜精品一区二区三区三上悠亚 | www.中文字幕.com | 国产伦一区二区三区四区 | 91国产在线播放 | 久久福利网站 | a视频在线观看 |