UnsafeAccessor 於 .NET 9 後有一些改善,本篇說明這些在 .NET 8 未竟全功的修正。
UnsafeAccessorAttribute 指南 (2)
- 208
- 0
- UnsafeAccessor
- 2025-12-08
UnsafeAccessor 於 .NET 9 後有一些改善,本篇說明這些在 .NET 8 未竟全功的修正。
UnsafeAccessorAttribute 是 .NET 8 加入的新特性,它提供了一種高效能的方式來存取型別的非公開成員。這個 Attribute 允許開發者在編譯時期定義存取器方法,並在執行時期以接近直接存取的效能來存取型別內部的非公開成員。
前一篇文章談到了在 Windows Forms 上使用內嵌字型,這一篇來聊聊在 WPF 上的作法。
我們有時會希望在應用程式中使用非作業系統預設的字型,而又不希望另外安裝,這時可以把字型檔嵌入到應用程式中使用,也不須煩惱這個字型的安裝問題。
簡單討論一些型別比對的方式。
利用 Task 建立長時工作並可以取消的簡單範例
這只是一個純粹為了有趣的練習題,不需要太嚴肅看待。
這篇文章討論設計泛型介面的時候,共變與逆變的設計時機。
聊聊 C# 7.2 不可變的結構設計
結構型別屬性的相關問題
聊聊 C# 中結構的有趣行為 -- 臨時區域變數
Recursive patterns 是一個非常強大的語法糖,個人覺得真的把『懶還要更懶』發揮到極致。
玩轉 WPF 課程招生中,傳送門:https://skilltree.my/events/9cbgp

using 變數宣告變得更簡潔。
None null 的參考型別來了,這是怎麼一回事呢?
前篇介紹完 Index,該是讓 Range 登場的時候。
搶先看 Async Stream 的最終章,在非 C# 8.0 的環境下也能寫出類似的效果。
標題誇張了點,不過我在寫 Async Stream 範例的過程中突發奇想把它移植到一般的 .NET Framework 環境中使用。
在目前版本中非同步迭代使用 yield return 的暫時解決方案說明。
C# 8.0 隨著 Visual Studio 2019 preview 版本的發布出世了,過去幾次 C# 的更版都帶來不少新功能,此次的 8.0 版也不例外。其中一個很有趣的功能就是 Async Stream,我打算花幾個篇幅來介紹這玩意兒。