私はC#を使用してゲームを書いていますが、関数がデリゲートを受け取り、代わりにパラメーターとして使用するデリゲートを作成してキャッシュする代わりに、関数名を誤って渡してしまうケースがいくつか見つかりました。これにより、これらの関数を呼び出すたびにデリゲートオブジェクトが作成され、関数が戻るとすぐにガベージになります。
私はこの間違いを犯したすべての場所を見つけたいので、それらを探すためにすべてのファイルのすべての行を読むことを避けたいと思います(何年にもわたるコードがあります)。VBに「optionstrict」があり、C#にその機能があれば機能すると思うオブジェクトの暗黙的な構築を無効にする方法を見ましたが、そうではないと思います。コンパイラの警告オプションも確認しましたが、ここでも役に立たないようです。
暗黙のデリゲート推論によって作成されたこれらのオブジェクトを識別して、ゴミを避けるためにコールバックを作成/キャッシュする必要がある場所を見つけることができる、合理的に便利な方法はありますか?