【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暴...
|
英文原文:C# and Visual Basic on the WinRT API (作者:Jonathan Allen 譯者:侯伯薇) 盡管我們可以使用 .NET 語言來調(diào)用 Win32 API,但那樣做會(huì)很困難。所以在過去的兩年間微軟一直在構(gòu)建替代的方案,它就是實(shí)...
WinRT 不是另一個(gè)抽象層;它就像 Win32 API 一樣,直接駐留在內(nèi)核之上。自從 1993 年 Win32 伴隨 Windows NT 被引入以來,這標(biāo)志著對(duì)于 Windows 核心的首次重大突破。WinRT 與 Win32 截然不同,它代表了新的語義學(xué)...
看了個(gè)BUILD的PPT,Windows Runtime (RT)并不是一些新聞網(wǎng)站說的那樣微軟自廢.NET武功,而是恰恰相反,WinRT是Win32 API的現(xiàn)代版,其中有很深的.NET的基因,是Metro UI的.NET基礎(chǔ),如果考察Metadata的變化,WinRT的API定...
GC的前世與今生 雖然本文是以.NET作為目標(biāo)來講述GC,但是GC的概念并非才誕生不久。早在1958年,由鼎鼎大名的圖林獎(jiǎng)得主John McCarthy所實(shí)現(xiàn)的Lisp語言就已經(jīng)提供了GC的功能,這是GC的第一次出現(xiàn)。Lisp的程序員...
Silverlight 4 在 Silverlight 功能列表中添加了打印,我想通過向您介紹令我欣慰的小程序來探討這一點(diǎn)。 該程序稱為 PrintEllipse,名稱就是它要執(zhí)行的所有操作。 MainPage 的 XAML 文件包含一個(gè)按...
在網(wǎng)上找了下插件式編程的資料,這里自己先借鑒下別人的,同時(shí)發(fā)現(xiàn)有自己的看法,不過由于本人水平有限,不一定有參考價(jià)值,寫出來一方面是為了總結(jié)自己,以求提高,另一方面也希望各為朋友看到我的不足,給我提出寶貴意見...
從去年找工作以來,都沒什么時(shí)間寫博客[找工作的體會(huì):建議以后有自己開公司的IT人一定要找IT專業(yè)人員做HR,好多公司的HR并不能真正發(fā)掘人才,他們形成了太多的偏見,如在學(xué)校期間學(xué)不了什么東西、只看學(xué)校有多少獎(jiǎng)勵(lì)...
分布式開發(fā)的歷史 利用Remote方式調(diào)用遠(yuǎn)程對(duì)象實(shí)現(xiàn)服務(wù)器與客戶端之間通訊是一種常用的網(wǎng)絡(luò)開發(fā)方式,在.NET與JAVA開發(fā)當(dāng)中,對(duì)Remote遠(yuǎn)程對(duì)象早已有著足夠的支持(對(duì)Remote遠(yuǎn)程對(duì)象調(diào)用有興趣的朋友歡迎參考...
JAVA與.NET是現(xiàn)今世界競爭激烈的兩大開發(fā)媒體,兩者語言有很多相似的地方。而在很多大型的開發(fā)項(xiàng)目里面,往往需要使用兩種語言進(jìn)行集成開發(fā)。而很多的開發(fā)人員都會(huì)偏向于其中一種語言,在使用集成開發(fā)的時(shí)候?qū)α?..
不知不覺VS2010已經(jīng)成為.NET開發(fā)人員的必備工具,相比經(jīng)典版VS2005,到過渡版VS2008,2010在性能穩(wěn)定性和易用性上都得到很大的提高。 結(jié)合VS工具,其下的插件也層出不窮。今天重點(diǎn)給大家介紹如何使用VS2010VS201...
剛開始學(xué)習(xí)C#的時(shí)候,就聽說CLR對(duì)于String類有一種特別的內(nèi)存管理機(jī)制:有時(shí)候,明明聲明了兩個(gè)String類的對(duì)象,但是他們偏偏卻指向同一個(gè)實(shí)例。如下:String s1 = "Hello";
String s2 = "Hello";...
ASP.NET MVC 3支持一項(xiàng)名為“Razor”的新視圖引擎選項(xiàng)(除了繼續(xù)支持/加強(qiáng)現(xiàn)有的.aspx視圖引擎外)。當(dāng)編寫一個(gè)視圖模板時(shí),Razor將所需的字符和擊鍵數(shù)減少到最小,并保證一個(gè)快速、通暢的編碼工作流。 ...
軟件約定稱為代碼約定,通過這一約定可以表示代碼正常工作所需的正式條件。 如果方法未按預(yù)期收到數(shù)據(jù)或生成的數(shù)據(jù)不符合預(yù)期的后置條件,代碼約定將導(dǎo)致代碼引發(fā)異常。 有關(guān)前置條件和后置...
對(duì)于一個(gè)已編譯好的.NET程序集,Windows操作系統(tǒng)是如何啟動(dòng)執(zhí)行的呢?日常使用中我們發(fā)現(xiàn)對(duì)于托管的和非托管的程序集編譯器都會(huì)吧程序集編譯成以.exe或.dll等為擴(kuò)展名的文件,可見Windows加載器并沒有區(qū)分是托管...
TCP/IP套接字的概念 TCP/IP(傳輸控制協(xié)議/網(wǎng)際協(xié)議)是網(wǎng)絡(luò)互連的通信協(xié)議,通過它可以實(shí)現(xiàn)各種異構(gòu)網(wǎng)絡(luò)或異種機(jī)之間的互聯(lián)通信。TCP/IP是Transmission Control Protocol/Internet Protocol的簡寫,中文譯名為...
很多人都有過使用網(wǎng)絡(luò)螞蟻或網(wǎng)絡(luò)快車軟件下載互聯(lián)網(wǎng)文件的經(jīng)歷,這些軟件的使用可以大大加速互聯(lián)網(wǎng)上文件的傳輸速度,減少文件傳輸?shù)臅r(shí)間。這些軟件為什么有如此大的魔力呢?其主要原因是這些軟件都采用了多線程...
今天我們來看看5種使用Linq函數(shù)聯(lián)接序列的方法,這5種方法可以歸入下列兩類: 同類的聯(lián)接 Concat() Union() 不同類的聯(lián)接 Zip() Join() GroupJoin() Concat() – 串聯(lián)序列 最...
前端日子自己寫了一個(gè)簡單的日志跟蹤程序,現(xiàn)在目前正在做的一個(gè)項(xiàng)目中使用以便于跟蹤程序異常和運(yùn)行狀況,但是被否認(rèn)了!可能是沒有權(quán)威性,于是自己總結(jié)了一下Log4net日志跟蹤系統(tǒng),這里分享大家學(xué)習(xí)一下。當(dāng)然寫...
觀察者模式想必搞程序開發(fā)的都聽說過,今天我也來簡單的總結(jié)一下本人在程序開發(fā)過程中是怎么使用觀察者模式的;希望給大家?guī)睃c(diǎn)新的想法,如果哪位高手看到了也不要嘲笑啊;呵呵,追求技術(shù)的人,始終都是為了技術(shù)而學(xué)...
記得在下第一次接觸.NET Remoting分布式開發(fā)是在2003年,那時(shí)候是Framework1.0初次亮相之時(shí),Remoting分布式開發(fā)是Framework1.0其中一個(gè)亮點(diǎn)。經(jīng)過多年的發(fā)展,在2005年,WCF隨著Framework2.0首先亮相。WCF是結(jié)合Re...
靜態(tài)類是一種聲明為 static 類型的,且僅包含靜態(tài)成員的類。不能使用 new 關(guān)鍵字創(chuàng)建靜態(tài)類的實(shí)例。靜態(tài)類在加載包含該類的程序或命名空間時(shí)由 .NET Framework 公共語言運(yùn)行庫 (CLR) 自動(dòng)加載。 靜態(tài)類和類成...
在上一篇文章中,我介紹了我們用土法煉鋼的方法,使用Velocity提供的自定義標(biāo)簽實(shí)現(xiàn)片段緩存。這樣的方式雖然也解決了我們的問題,但還是引出了一些bug。而且還有點(diǎn)hack的味道(雖然我喜歡hack)。實(shí)際上對(duì)于片段緩存...
一般,頁面上會(huì)分為很多部分,而不同的部分更新的頻率是不一樣的。如果對(duì)整個(gè)頁面采用統(tǒng)一的緩存策略則不太合適, 而且很多系統(tǒng)的頁面左上角都有一個(gè)該死的“Welcome XXX”。這種特定于用戶的信息我...
過程式的開發(fā)方式已逐漸退出大眾的眼線,隨之而來的是各種各樣的高抽象的開發(fā)模式;我們不得不承認(rèn)在沒有設(shè)計(jì)模式的時(shí)候,我們很難總結(jié)出有價(jià)值的開發(fā)模型,便于以后重復(fù)使用和推廣;面向?qū)ο蟮牧餍校屛覀冮_發(fā)人員重...
系列博客 1. 改善代碼設(shè)計(jì) —— 優(yōu)化函數(shù)的構(gòu)成(Composing Methods) 2. 改善代碼設(shè)計(jì) —— 優(yōu)化物件之間的特性(Moving Features Between Objects) 3. 改善代碼設(shè)計(jì) &md...