[C#] .NET8 - Dictionary、FrozenDictionary、HashTable的性能對決

2024-01-24

最近在看 .NET 8 新功能,有一個東西有點興趣 就是 FrozenDictionary ,想說他跟傳統的 Dictionary 有啥不同

畢竟 .NET 8  是以輾壓級效能做為賣點 ,看了一下官方這段話的介紹

以效能為焦點的類型.NET 8 引進數種旨在改善應用程式效能的新類型。 新的 System.Collections.Frozen 命名空間包含集合類型和 FrozenDictionaryFrozenSet

這些類型不允許在集合建立之後對索引鍵和值進行任何變更。 該需求允許更快速的讀取作業(例如, TryGetValue() )。

這些類型特別適用于第一次使用時填入的集合,然後在長期服務期間持續保存

感覺使用上就是拿來可以放在記憶體中快速索引的好東西,直接用 BenchmarkDotNet 跑一下



[C#] Magick.NET 分享:PDF轉JPG遇到的問題及解決方案

2024-01-23

今天主要透過  Magick.NET 處理把 PDF 轉成 JPG 圖片,一頁轉成一個檔案,中間有遇到一些有的沒的問題

就記錄一下吧,給之後有這需求又有碰到的人



[C#] Magick.NET 分享:webp轉jpg、降低品質、等比例縮小

2024-01-22

最近在處理一些圖形的東西,但是因為就是很懶,所以網路上找了一下有沒有 .NET 可以方便撰寫的 library 

測試了幾個最後推薦這個  Magick.NET



[C#] 輕鬆驗證資料:探索.NET 8中對System.ComponentModel.DataAnnotations的增強支持

2024-01-19

最近在看 .Net8 新功能,發現 對於 System.ComponentModel.DataAnnotations 增加了許多的擴充

變得方便許多,今天就來簡單的測試一下


[.Net8]從AOT到dotnet publish:在Raspberry Pi 3上成功運行.NET 8 Web API的步驟

2024-01-18

最近因為要佈署一些 基於 .Net8 的Web API 到 Raspberry Pi 3  上面跑,因為 .Net 8 AOT 無法在上面執行

所以還是得安裝 dotnet 8 runtime ,因為我不死心我直接把程式碼放上去編譯,我原本是在 x64 電腦編譯後放過去

結果無法執行起來即使我 chmod+x 也沒用,但是放上去 透過 dotnet publish 後發現


[.Net][RPi] 將.NET 8搬上Raspberry Pi 3的操作指南

最近很訝異,因為我在 一台舊舊的 Raspberry Pi 3 上面執行起來一個 .net 8 的程式

雖然玩 Pi 也是有些年頭了,但是我沒有在上面面跑過 .Net 到是 Chromebook 我之前有在上面寫過 ASP.net 的小專案

重點是 因為我跑的機器是 Pi 3 ,我比較訝異,因為到了 Pi 4 性能上都有爆發成長都可以裝 Win11 了

這次我測是跑的專案是 這個 之前寫的 Console ,然後就放到 Pi3 上面跑跑看竟然成功了

所以分享一下步驟



當麻許的超技八 2014 | Donma Hsu Design.