簡介.NET 4.0的多工執行利器--Task 2012-07-20 06:00 AM 20 103,830 前陣子試寫SignalR時,學到.NET 4.0在多工執行上提供了新類別--Task。初試之下,發現用它取代傳統Thread、ThreadPool寫法,能大幅簡化同步邏輯的寫法,頗為便利。整理幾個範例展示Task的使用方式,分享兼備忘。 先從最簡單的開始。test1()用以另一條Thread執...
指定選擇性DateTime引數的預設值 2012-03-03 06:39 AM 8 18,796 選擇性引數(Optional Argument)是我愛用的C# 4.0新特性之一。 以傳入arg1, arg2引數的方法為例,若要讓arg2變成選擇性引數,過去得用多載(Overloading)實現,需要宣告成 void someMethod(stri...
TIPS-在多執行緒環境更新共用資料物件 2012-01-31 10:47 PM 0 15,053 有一段小時候寫的程式,運行多年無恙,卻在今天發生爆炸! 看似正常的更新Dictationary邏輯,卻在Dictoinary.Add時冒出"Index was outside the bounds of the array."錯誤: if (Cache.ContainsKey(key)) ...
既然要動態就動個痛快 - ExpandoObject 2011-06-10 06:41 AM 0 43,678 動態語言是C# 4.0的重要特色之一,dynamic關鍵字的出現,簡化了以往用Reflection大費周章才能做到的物件屬性(Property)及方法(Method)動態存取。 用個簡單的例子示範: using System; using Microsoft.C...