採用 .Net Framework 內建的 ThreadPool 雖然也不錯用,但若真的實際用來開發時,就會發現有許多使用情境會導致程式碼過於複雜、不容易閱讀。最近發現 Smart Thread Pool 似乎蠻不錯用的,如果你的程式有多份工作需要同步執行,而又不考慮程式執行的先後順序時,是可以考慮使用 Smart Thread Pool 來開發多執行緒程式。
... 繼續閱讀 ...
為了讓應用程式執行的更有效率,我們通常會採用 非同步程式設計模式 ( Asynchronous Programming Design Patterns ) 或 多執行緒處理 ( Managed Threading ) 的方式進行開發,尤其是多執行緒程式設計一直是許多程式設計師不敢碰或沒機會碰到的技術,我們最近就有個案子(非 Web 專案)就需要用到多執行緒進行開發,以確保程式的執行效能能夠符合客戶需求,以下我列出一些之前整理收集的參考資料,供初學者學習研究之用。
... 繼續閱讀 ...
我們常用的 LINQ to SQL 就是一種簡單、易用的 ORM 技術。我們也都知道若是拿採用 ORM 技術與直接存取 Database 這兩件事來比較,ORM 因為多卡了一層一定會比較慢一些些,但是採用 ORM 技術有很多機會可以調校(Tuning),例如資料快取(Caching)、定義查詢計畫(Query Plan)等。
... 繼續閱讀 ...
Entity Framework 的中文學習資源的確蠻少的,也許這門技術還太新,所以真的很少人在用,因此要學會 Entity Framework 也可能需要花不少精神,我個人對 Entity Framework 還還算新手上路的階段而已,學習的過程中也發現了一些快速上手的訣竅,也許可以讓新手不要那麼恐懼新技術。
... 繼續閱讀 ...
雖然 Windows Setup Project 安裝專案很好用,也可以自訂使用者介面,但限制頗多,只要自訂的使用者介面多一些條件就沒辦法客製化了,所以我們打算改用 NSIS 進行安裝過程的介面自訂,最後再將透過 UI 介面取得的參數傳入 Installer 類別中,並利用 C# 撰寫的程式碼幫我們完成 Post-Install 的動作執行,例如安裝 IIS 站台、建立資料庫、建立使用者或群組、... 等。
... 繼續閱讀 ...
上週我親自跑去基隆處理一個程式問題,由於當場的環境缺乏檢測工具,且我們之前的程式 ( Windows 服務 ) 並沒有寫很多追蹤(Trace)的程式碼,只有將一些摘要資訊寫入 EventLog,導致在當場花了許多時間,而且最後還是沒有抓出問題,白白浪費了一個下午。
... 繼續閱讀 ...
最近正準備寫一支 Windows Service 程式,正好來分享如何讓 Windows Service 程式具有自動安裝的能力,而且若要在安裝的過程中順便開啟 Windows Firewall 的設定時 C# 程式要如何撰寫。
... 繼續閱讀 ...
技術變化的可真快,C# 3.0 推出還不到兩年,估計不久 C# 4.0 可能就要出爐了,這幾天抽空看了一下關於 C# 4.0 的新特性,感覺未來寫 C# 會越來越有 "彈性",是好是壞見仁見智,但我還蠻期待的,今天我就簡單介紹幾個 C# 4.0 的新特性。
... 繼續閱讀 ...
C# / .NET 是個完全物件導向的程式語言,所有的物件都有自己的型別(Type),所以瞭解型別與善用型別是開發 .NET 應用程式很重要的基礎。
... 繼續閱讀 ...