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

.NET 4并行編程入門介紹

開發(fā) 后端
本文將介紹的是.NET 4并行編程入門,同時介紹了并行編程技術(shù)的利弊以及何時該采用并行技術(shù)。希望對大家有所幫助。

查看本系列其他文章,請參看

[[11564]]

本篇文章的議題如下:

1. 并行編程和多線程編程的區(qū)別。

2. 并行編程技術(shù)的利弊

3. 何時采用并行編程

1.并行編程和多線程編程的區(qū)別。

1.1并行編程。

現(xiàn)在隨著多核計算機的普及,并行編程技術(shù),也就是多核編程技術(shù)也逐漸稱為開發(fā)的主流。為此,在.NET 4 中就引入了“并行編程”。在.NET 4 中一些列的Library和類為并行編程提供了支持,如: Task Parallel Library,Parallel  LINQ等。

其實在.NET 1.0中就有了并行編程技術(shù)的一些實現(xiàn)---多線線程技術(shù)。多線程***的問題就是難于使用和管理。在使用多線程的使用,因為它的復(fù)雜性,往往使用我們把注意力分散了多線程上。而致使我們的最初目的被掩蓋了。

1.2 比較區(qū)別

在.NET 4中提出的并處編程的底層機制其實還是基于多線程的。但是他們之前***的區(qū)別就是.NET 4中的并行編程更加方便。

在傳統(tǒng)的編程模型中,程序員負責(zé)創(chuàng)建線程,為線程分配任務(wù),管理線程。一個形象的比喻:你擁有一批士兵,然后你對他們下達命令,之后,你就必須時刻監(jiān)視你的那些士兵,確保他們按照你的意圖辦事。(很累吧!)

在.NET 4中的并行編程是依賴Task Parallel Library(后面簡稱為TPL) 實現(xiàn)的。在TPL中,最基本的執(zhí)行單元是task(中文可以理解為"任務(wù)"),一個task就代表了你要執(zhí)行的一個操作。你可以為你所要執(zhí)行的每一個操作定義一個task,TPL就負責(zé)創(chuàng)建線程來執(zhí)行你所定義的task,并且管理線程。TPL是面向task的,自動的;而傳統(tǒng)的多線程是以人工為導(dǎo)向的。

Task機制使得我們把注意力關(guān)注在我們要解決的問題上面。如果之前的多線程技術(shù)使得我們放棄了一些并行編程的使用,那么.NET 4中的新的并行編程技術(shù)可以讓我們重新建立信心。

雖然有了新的并行技術(shù),但是傳統(tǒng)的多線程的技術(shù)還是很有用的。當我們使用TPL中的并行技術(shù)的時候來執(zhí)行多個task的時候,我們不用在關(guān)心底層創(chuàng)建線程,管理線程等。

2. 并行編程技術(shù)的利弊

使用并行技術(shù)***的好處就是提高了系統(tǒng)的性能。并行處理過程一般是這樣的:一個要執(zhí)行的任務(wù)被拆分為很多很小的部分,然后這些很小的部分就分別在不同處理器(可以是多核的一臺電腦,也可以使很多的電腦)上執(zhí)行。因為這些很多很小的部分同時在執(zhí)行,所以稱之為"并行"。

使用并處編程的時候需要考慮下面的問題:

1.開銷問題。

并行執(zhí)行不是免費的,也是要開銷的。在并行運行開始和管理都是需要開銷的,就類比在線程的創(chuàng)建和管理一樣。在程序中,你要執(zhí)行的任務(wù)越多,那么使用并行的效果就越好。

2. 數(shù)據(jù)的協(xié)調(diào)

如果在并行執(zhí)行的那些小部分需要共享公共的數(shù)據(jù),那么我們就要協(xié)調(diào)。一般來說,需要協(xié)調(diào)的數(shù)據(jù)越多,并行執(zhí)行的性能損耗就越大。如果執(zhí)行各個小部分之間都是獨立的,那么我們就不用協(xié)調(diào)了。但是很多的時候,我們都是需要協(xié)調(diào)的。而且協(xié)調(diào)的技術(shù)也不是很難,在之后的文章中會一一講述。

3.性能提高多少

增加一臺計算機的CPU可能會提高程序的運行速度,但是不是絕對的。我們知道,一個應(yīng)用程序在單核的計算機上運行的時間不一定(往往也不是)雙核計算機的

1/2.所以,采用并行編程不一定就一定會成倍的提高程序的性能。因為性能與很多的因數(shù)有關(guān)的,硬件就是很大的因數(shù)。

3. 何時采用并行編程

建議:如果一個問題能夠用并行編程解決,那么就用,否則就不用。聽起來好像是廢話,但是確實是一個很不錯的建議。因為并行編程也不是***的,也只能

解決一類的問題,所以在用之前要分析問題了。如果一個問題確實能夠用并行的方案來解決,但是有很多的因數(shù)影響,如之前我們提到的一些問題。權(quán)衡使用之后的開銷和好處在決定是否使用。后續(xù)文章會給出很多的例子。

原文標題:.NET 4 并行(多核)編程系列之一入門介紹

鏈接:http://www.cnblogs.com/Leo_wl/archive/2010/05/31/1747928.html

【編輯推薦】

  1. 微軟發(fā)布新版Windows 7及.NET 4軟件開發(fā)工具包
  2. 詳解.NET 4.0并行計算支持歷史
  3. 詳讀.NET 4.0環(huán)境配置
  4. 詳解.NET 4.0中異常處理方面的新特性
  5. 三方面詮釋.NET 4.0的新特性
責(zé)任編輯:彭凡 來源: 博客園
相關(guān)推薦

2010-06-04 09:11:10

.NET并行編程

2010-06-07 08:43:46

.NET 4并行編程

2010-06-08 08:41:08

.NET 4并行編程

2010-06-09 09:18:34

.NET 4并行編程

2010-06-11 09:01:02

.NET 4并行編程

2010-06-24 09:12:27

.NET 4并行編程

2015-10-13 09:18:00

.Net編程教程

2009-07-24 15:41:00

ASP.NET編程入門

2009-11-11 10:27:22

ADO.NET入門

2024-04-07 09:04:18

Parallel 類編程工具.NET

2011-03-24 09:23:43

.NET 4多核并行

2010-04-21 09:23:09

.NET 4

2009-02-23 15:20:03

SQL Server數(shù)據(jù)庫ASP.NET

2009-08-03 17:35:07

ASP.NET WebASP.NET編程工具

2009-12-23 10:10:59

ADO.NET編程

2010-01-04 11:02:06

ADO.NET組件

2017-04-25 15:20:11

Python進程mpi4py

2009-10-23 17:22:48

VB.NET編程

2012-04-06 10:31:44

Java

2013-03-25 10:26:19

XML數(shù)據(jù)庫
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 精品久久久久久久久久 | 亚洲黄色av网站 | 黄色香蕉视频在线观看 | 国产剧情一区二区三区 | 91精品国产色综合久久 | 国产欧美一区二区三区在线看 | 国产露脸国语对白在线 | 99久久久国产精品 | 天天夜夜操 | 国产精品视频一二三区 | 在线免费小视频 | av中文网| 日韩国产在线 | 999久久久久久久 | 国产精品成av人在线视午夜片 | 免费三级网 | 国产在线观看网站 | 偷拍自拍在线观看 | 国产成人99久久亚洲综合精品 | 丝袜 亚洲 另类 欧美 综合 | 中文字幕国产 | 综合久久av | 午夜99| 色爱综合网| www.久久.com | 国产精品久久九九 | 欧美一级淫片免费视频黄 | 成人黄色电影在线播放 | 欧美视频1区 | 二区在线观看 | av免费网站在线观看 | 久久精品日产第一区二区三区 | 欧美激情精品久久久久久变态 | 先锋av资源在线 | 亚洲视频在线观看 | 波多野结衣精品 | 天天久 | 亚洲一二视频 | 99免费在线视频 | 欧美久久电影 | 成人免费一区二区三区视频网站 |