【NET技術(shù)焦點(diǎn)】C#多線程學(xué)習(xí)(六) 互斥對(duì)象
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
系列文章導(dǎo)航:C#多線程學(xué)習(xí)(一) 多線程的相關(guān)概念C#多線程學(xué)習(xí)(二) 如何操縱一個(gè)線程C#多線程學(xué)習(xí)(三) 生產(chǎn)者和消費(fèi)者C#多線程學(xué)習(xí)(四) 多線程的自動(dòng)管理(線程池)C#多線程學(xué)習(xí)(五) 多線程的... [詳細(xì)]
緣起 每次有新技術(shù)發(fā)布時(shí),我們總能感受到兩種截然不同的情緒:一種是恐懼和抵抗,伴隨著這種情緒的還有諸如"C# 2.0用的挺好的,為什么要在C# 3.0搞到那么復(fù)雜?"或者"我還在使用C#1.0呢?"等言辭;...
軟件工程是一門獨(dú)特的工程藝術(shù),需要解決的是不斷改變的需求變化。而對(duì)于WCF,對(duì)于SOA,由于涉及的是對(duì)多個(gè)系統(tǒng)之間的交互問題,如何有效地解決不斷改變的需求所帶來的問題就顯得更為重要:Service端...
在本篇文章上一部分Order Processing的例子中,我們看到原本已Collection形式定義的DetailList屬性(public IList<TDetail> DetailList),在Data Contract中卻以Array的方式體現(xiàn)(public OrderDetai...
通過第一部分的介紹,我們可以體會(huì)到,WCF 的Data Contract在CLR Type和Neutral Contract之間搭建了一座橋梁,彌合了.NET世界和廠商中立世界的差異。通過WCF Data Contract我們將CLR Data Type暴...
|
寫系列的上一篇已經(jīng)是很久之前的事兒了= =在此期間,EF 4.1的RTW都已經(jīng)出來了,NH 3.2的Alpha已經(jīng)2了。。。其實(shí)不是我懶,工作中也在一直使用EF 4.1。主要是上次承諾過的一個(gè)Update功能搞不定= = 總之這一次的...
權(quán)限管理是很多軟件中相當(dāng)重要的一個(gè)模塊它的設(shè)計(jì)的好壞直接影響到軟件的安全性、權(quán)限管理的可擴(kuò)展性和易操作性 以及代碼中權(quán)限判斷的復(fù)雜程度和效率等方面。此文主要想和大家分享的是這段時(shí)間,對(duì)權(quán)限管理和...
談到人工智能(AI),這個(gè)話題就太大了;大學(xué)里有《人工智能教程》專門講這方面的知識(shí),什么大名鼎鼎的人工神經(jīng)網(wǎng)絡(luò)、遺傳算法等等均可一窺究竟,這里如贅述似乎有些班門弄斧,我們暫且丟它一邊去吧?! ”竟?jié),我的主要...
這是這一系列的最后一篇文章了,前面我們講到了XML,SOAP,HTM格式和第二部分的JSON和JSONP。現(xiàn)在我們來看看自定義數(shù)據(jù)格式?! ∽罴训臄?shù)據(jù)傳輸格式應(yīng)該是使用最少的傳輸量表達(dá)最需要的數(shù)據(jù)。想想之前在XML和J...
多選文件上傳,已經(jīng)非常多了,選擇性多了可能有時(shí)候要比較下哪個(gè)更合適,結(jié)合到項(xiàng)目中使用更方便才是最重要的。很多的多選上傳基本上都是調(diào)用的swf文件,確實(shí)用flash 或flex開發(fā)一個(gè)多選上傳的功能很方便,比如flex里...
寫這個(gè)系列原本的想法是討論一下.NET中異步編程風(fēng)格的變化,特別是F#中的異步工作流以及未來的.NET 5.0中的基于任務(wù)的異步編程模型。但經(jīng)過三篇文章后很多人對(duì)IO異步背后實(shí)現(xiàn)的原理以及為什么這樣能提高性能...
I:Web Pages 1.0中以“_”開頭的特別文件(文件命名時(shí)不區(qū)分大小寫) “_appstart.cshtml” & “_pagestart.cshtml” & “_viewstart.cshtml” _appstart.csh...
剛剛愛上MVC3.0,幾個(gè)不眠夜的學(xué)習(xí)越來越有趣。今天隨手嘗試自定義Mvc3.0的視圖引擎,雖然已成功,但是還發(fā)現(xiàn)有點(diǎn)小疑問。隨手貼出來希望大家指教指教。MVC的視圖文件目錄被固定/Views目錄內(nèi),區(qū)域視圖文件也是被固定在...
需要明確一下C#程序(或者說.NET)中的資源。簡(jiǎn)單的說來,C#中的每一個(gè)類型都代表一種資源,而資源又分為兩類: 托管資源:由CLR管理分配和釋放的資源,即由CLR里new出來的對(duì)象; 非托管資源:不受CLR管理的對(duì)象,windows...
在標(biāo)準(zhǔn)的Dispose模式中,提到了需要及時(shí)釋放資源,卻并沒有進(jìn)一步細(xì)說讓引用等于null是否有必要。 有一些人認(rèn)為等于null可以幫助垃圾回收機(jī)制早點(diǎn)發(fā)現(xiàn)并標(biāo)識(shí)對(duì)象是垃圾。其他人則認(rèn)為這沒有任何幫助。是否賦...
要選擇正確的集合,我們首先要了解一些數(shù)據(jù)結(jié)構(gòu)的知識(shí)。所謂數(shù)據(jù)結(jié)構(gòu),就是相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。結(jié)合下圖,我們看一下對(duì)集合的分類。 集合分類 在上圖中,可以看到,集合總體上...
MEF(Managed Extensibility Framework)是.NET Framework 4.0一個(gè)重要的庫(kù),Visual Studio 2010 Code Editor的擴(kuò)展支持也是基于MEF構(gòu)建的。MEF的目標(biāo)是簡(jiǎn)化創(chuàng)建可擴(kuò)展的應(yīng)用程序,其核心類是ComposablePart,即具...
SOA本身就是一種面向企業(yè)級(jí)服務(wù)的系統(tǒng)架構(gòu),簡(jiǎn)單來說,SOA就是一種進(jìn)行系統(tǒng)開發(fā)的新的體系架構(gòu),在基于SOA架構(gòu)的系統(tǒng)中,具體應(yīng)用程序的功能是由一些松耦合并且具有統(tǒng)一接口定義方式的組件(也就是service)組合構(gòu)建起...
我們搞程序的多多少少都了解點(diǎn)算法。總體來講,算法是什么?算法就是“時(shí)間”和“空間”的互換策略。我們常常考究一個(gè)算法的時(shí)間復(fù)雜度或空間復(fù)雜度,如果我們有絕對(duì)足夠的時(shí)間或空間,那么算...
提到RPG中的空戰(zhàn)系統(tǒng),首先想到的當(dāng)然是3D,這方面可是它的絕活。比如以之為核心噱頭的《永恒之塔》;當(dāng)然,在2.5D網(wǎng)游中也有著類似的實(shí)現(xiàn),像《西游記Online》,不過該游戲的空戰(zhàn)僅僅是將戰(zhàn)場(chǎng)(場(chǎng)景)變換到了空中而已,地...
在信息系統(tǒng)開發(fā)的時(shí),根據(jù)相關(guān)業(yè)務(wù)邏輯難免會(huì)多系統(tǒng)之間互相登錄。一般情況下我們需要在多系統(tǒng)之間使用多個(gè)用戶名和密碼。這樣客戶就需要在多個(gè)系統(tǒng)之間重復(fù)登陸。每次登錄都需要輸入用戶名和密碼。最近比較...
I:ASP.NET MVC3在Visual Studio 2010中的變化 在VS2010中新建一個(gè)MVC3項(xiàng)目可以看出與以往的MVC2發(fā)生了很明顯的變化。 1.ASP.NET MVC3必要的運(yùn)行環(huán)境為.NET 4.0 (想在3.5用MVC3,沒門!)。 2.默認(rèn)MV...
1. 新建項(xiàng)目 打開VS2010,選擇 文件>新建>項(xiàng)目,新建ASP.NET MVC3 Web 應(yīng)用程序,我這里把它命名為Blog。 2. 編寫實(shí)體類 對(duì)于一個(gè)博客,一下幾個(gè)類應(yīng)該是必須的吧:Post 博客...
對(duì)于一個(gè)以數(shù)據(jù)處理為主的應(yīng)用中的UI層,我們往往需要編寫相當(dāng)多的代碼去實(shí)現(xiàn)數(shù)據(jù)綁定。如果界面上的控件和作為數(shù)據(jù)源的實(shí)體類型之間存儲(chǔ)某種約定的映射關(guān)系,我們就可以實(shí)現(xiàn)批量的數(shù)據(jù)綁定。為了驗(yàn)證這種想法,...
《上篇》主要介紹如何通過DataBinder實(shí)現(xiàn)批量的數(shù)據(jù)綁定,以及如何解決常見的數(shù)據(jù)綁定問題,比如數(shù)據(jù)的格式化。接下來,我們主要來談?wù)凞ataBinder的設(shè)計(jì),看看它是如何做到將作為數(shù)據(jù)源實(shí)體的屬性值綁定到界面對(duì)應(yīng)...
在上一篇講到,如果將BLL層的每一個(gè)類都轉(zhuǎn)化為*.svc,這是一個(gè)不實(shí)在的想法。它會(huì)使服務(wù)變化復(fù)雜,難于管理。 這時(shí)候,我們第一時(shí)間想到的是23個(gè)簡(jiǎn)單開發(fā)模式中的Factory,在這里,F(xiàn)actory正好派上用場(chǎng)。我們把這個(gè)F...
前面為大家介紹過WCF的特點(diǎn),現(xiàn)在再講解一下WCF基礎(chǔ)概念?! ≡赪CF里,各個(gè)Application之間的通信是由EndPoint來實(shí)現(xiàn)的,EndPoint是WCF實(shí)現(xiàn)通信的核心要素。一個(gè)WCF Service可由多個(gè)EndPoint集合組成,每個(gè)EndPoin...
粒子系統(tǒng)通常用于三維場(chǎng)景中進(jìn)行真實(shí)環(huán)境模擬,比如第四節(jié)的天氣系統(tǒng)。天氣的實(shí)現(xiàn)是粒子系統(tǒng)最重要的應(yīng)用領(lǐng)域之一,所有的一切無論是云、雨、霧,還是落葉、隕石及閃電,都可視作基礎(chǔ)粒子;除此之外,游戲中常常還會(huì)用...
我將和大家一起來學(xué)學(xué)C#中一些非常有用函數(shù),對(duì)于有些人來說可能它們不起眼,因此常常忽略它們。它們不會(huì)嚷嚷到:使用我吧!我會(huì)讓你節(jié)省很多的時(shí)間,而且讓你的代碼變得更加的簡(jiǎn)潔! -- 但是,這些話會(huì)從對(duì)它們熟悉的程...
對(duì)于一個(gè)以數(shù)據(jù)處理為主的應(yīng)用中的UI層,我們往往需要編寫相當(dāng)多的代碼去實(shí)現(xiàn)數(shù)據(jù)綁定。如果界面上的控件和作為數(shù)據(jù)源的實(shí)體類型之間存儲(chǔ)某種約定的映射關(guān)系,我們就可以實(shí)現(xiàn)批量的數(shù)據(jù)綁定。為了驗(yàn)證這種想法,...