はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

2024-05-01から1ヶ月間の記事一覧

【C#】インターンプールを用いてstring生成によるヒープのメモリ確保を防ぐ方法(メモリを占有しつづけるのでそこは注意)

C#

はじめに 今回はなるべくstringでヒープへのメモリ確保を抑えるためにインターンプールを利用する方法について紹介したいと思います。 はじめに 概要 string.Internとstring.IsInterned 明示的に登録しなくても登録される場合 注意点 参考 概要 通常stringは…

【C#】.NET 6で追加されたstring.Create(internalであるstring.FastAllocateStringを利用できるメソッド)を用いて高速にstringを生成する

C#

はじめに 今回はstring.Createを用いて高速にstringを生成する方法を紹介したいと思います。learn.microsoft.com はじめに 概要 使い方 ちなみに 実験 追記 注意点 参考 概要 string.FastAllocateStringというinternalなメソッドが.NETにはあり、これを利用…

【C#】GitHub Actionsで.NETのビルド&テストを行う方法(スターターワークフローがあるので簡単)

はじめに 今回はGitHub Actionsで.NETのビルド&テストを実行する方法を紹介したいと思います。 はじめに やり方 実験 ファイルを用意 ローカルで動作確認する GitHub Actionsが動作するか確認する ワークフローの中身 参考 やり方 .NETのビルド&テストをする…

【C#】FastEnumというライブラリを用いて列挙型関連のメソッドを爆速+ゼロアロケーションで実行させる(Static Type Cachingによる高速化)

C#

はじめに 今回は列挙型関連のメソッドを爆速+ゼロアロケーションで実行できるFastEnumというライブラリを紹介したいと思います。 .NETメソッドとの比較結果 はじめに 概要 インストール方法 使い方 列挙型のName・Value・FieldInfoなどを一度に取得したい場…

【C#】dotnet newコマンドでプロジェクトを作成できるようなテンプレートを作成する方法

C#

はじめに 今回はdotnet new 〇〇コマンドでプロジェクトを作成できるようなテンプレートの作成方法を紹介したいと思います。 $ dotnet new stringext テンプレート "Example templates: string extensions" が正常に作成されました。 テンプレートからプロジ…