大きなバッファ(> 100MB)を扱うコードを扱っており、これらの操作はunsafe
ブロックで行われます。私はunsafe
コードを避けるためにこれらをリファクタリングしたいと思います。私はそれに着手する前に、可能性のあるメモリパフォーマンスの向上(正/負/中立)について疑問に思っています。C#の型の安全性はどのようにガベージコレクションに影響しますか?
私は、コンパイラが型を検証できれば、より良いコードを生成する可能性があると主張しています。これは良いGCパフォーマンスを意味します。これは有効なアサーションですか?あなたの経験は何ですか?ありがとう。
* 'unsafe'ブロックであなたのピン留めの活動です。 – Ani
はい、バッファはさまざまな操作の前に '固定'ブロックに固定されています。これはポインタで操作するために型安全性を取り除いた結果と信じています。 – Indy9000
ピン止めは何の違いもありません。これらの大きな配列はLOHに割り当てられ、移動不可能です。 –