バランス大事
そういえば ループ内で小さな文字列結合が必要な場合の実験してないなあ/Expressionでリフレクションをキャッシュするのを最近試してるけど繰り返しが少ないとキャッシュができるまでの時間で相殺されちゃうとか
“LINQチェーンを使用したフィルタリングと変換(複数回の反復処理)”いやこれはちょっと。Whereで無意味にToListやってるのがダメでは。
LINQチェーン用メソッドはIEnumerableで受けて返す方が好み。ToListも内部的にArrayPoolからバッファ取得するIBufferWriter実装したメソッドを自作するともう少しアロケーション減らせるぞ。
“アプリでよく目にする “当たり前” の実装を例に取り、「どちらを選ぶとどれくらい速いのか?」 を BenchmarkDotNet で可視化しながら検証”
【C#】同じ機能、違う書き方 - パフォーマンスで選ぶべきコードはどっち? - Qiita
バランス大事
そういえば ループ内で小さな文字列結合が必要な場合の実験してないなあ/Expressionでリフレクションをキャッシュするのを最近試してるけど繰り返しが少ないとキャッシュができるまでの時間で相殺されちゃうとか
“LINQチェーンを使用したフィルタリングと変換(複数回の反復処理)”いやこれはちょっと。Whereで無意味にToListやってるのがダメでは。
LINQチェーン用メソッドはIEnumerableで受けて返す方が好み。ToListも内部的にArrayPoolからバッファ取得するIBufferWriter実装したメソッドを自作するともう少しアロケーション減らせるぞ。
“アプリでよく目にする “当たり前” の実装を例に取り、「どちらを選ぶとどれくらい速いのか?」 を BenchmarkDotNet で可視化しながら検証”