
C# でバイナリ操作を行う際によく使う API をまとめています。
確保/解放
スタック領域を確保
stackalloc でスタック領域にバッファを確保します。この確保・解放コストは非常に低く抑えられます。
Span<byte> buffer = stackalloc byte[1024];
スタック領域の大きさは実行環境や実装によりますが、例えば Windows ではスレッドあたり1MBとかになります。stackalloc での確保量が大きいと、メソッド呼び出しの深さなどによってはスタックオーバーフローを起こす可能性があるので注意が必要です。
配列プールからの確…
Source link
Views: 0