大家好,這是 [C#.NET 拾遺補漏] 系列的第 08 篇文章,今天講 C# 強大的 LINQ 查詢。LINQ 是我最喜歡的 C# 語言特性之一。 LINQ 是 Language INtegrated Query 單詞的首字母縮寫,翻譯過來是語言集成查詢。它為查詢跨各種數據源和格式的數據提供 ...
多線程編程時,如果涉及同時讀寫共享數據,就要格外小心。如果共享數據是獨占資源,則要對共享數據的讀寫進行排它訪問,最簡單的方式就是加鎖。鎖也不能隨便用,否則可能會造成死鎖和活鎖。本文將通過示例詳細講解死鎖和活鎖是如何發生的 ,以及如何避免它們。 避免多線程同時讀寫共享數據 在實際開發中,難免會遇到多線程讀寫共享數據的需求。比如在某個業務處理時,先獲取共享數據 比如是一個計數 ,再利用共享數據進行某些 ...
2020-11-13 07:34 10 3628 推薦指數:
大家好,這是 [C#.NET 拾遺補漏] 系列的第 08 篇文章,今天講 C# 強大的 LINQ 查詢。LINQ 是我最喜歡的 C# 語言特性之一。 LINQ 是 Language INtegrated Query 單詞的首字母縮寫,翻譯過來是語言集成查詢。它為查詢跨各種數據源和格式的數據提供 ...
數據標注(Data Annotation)是類或類成員添加上下文信息的一種方式,在 C# 通常用特性(Attribute)類來描述。它的用途主要可以分為下面這三類: 驗證 Validation:向數據添加驗證規則 顯示 Display:指定數據如何呈現給用戶 模型 Modeling ...
大家好,這是【C#.NET 拾遺補漏】專輯的第 06 篇文章。今天講講大家熟悉的單例模式。 單例模式大概是所有設計模式中最簡單的一種,如果在面試時被問及熟悉哪些設計模式,你可能第一個答的就是單例模式。 單例模式的實現分為兩種:餓漢式和懶漢式。前者是在靜態構造函數執行時就立即實例化,后者是在程序 ...
字符串操作在任意編程語言的日常編程中都隨處可見,今天來匯總一下 C# 中關於字符串的一些你可能遺忘或遺漏的知識點。 逐字字符串 在普通字符串中,反斜杠字符是轉義字符。而在逐字字符串(Verbatim Strings)中,字符將被編程器按照原義進行解釋。使用逐字字符串只需在字符串前面 ...
閱讀本文大概需要 3 分鍾。 通常,反射用於動態獲取對象的類型、屬性和方法等信息。今天帶你玩轉反射,來匯總一下反射的各種常見操作,撿漏看看有沒有你不知道的。 獲取類型的成員 Type 類的 ...
要理解 C# 中的 volatile 關鍵字,就要先知道編譯器背后的一個基本優化原理。比如對於下面這段代碼: 在 Release 模式下,編譯器讀取 x = 5 后緊接着讀取 y = x + 10,在單線程思維模式下,編譯器會認為 y 的值始終都是 15。所以編譯器會把 y = x + 10 ...
線程的知識太多,知識點有深有淺,往深的研究會涉及操作系統、CPU、內存,往淺了說就是一些語法。沒有一定的知識積累,很難把線程的知識寫得全面,當然我也沒有這個能力。所以想到一個點寫一個點,盡量總結一些有 ...
小知識或小技巧也是一種小小的收獲。在你看這篇小文時,或許這種偶然的事情就正在發生。我們先從數組的初始化 ...