JRebel は、新しいバージョンのクラスを実行中の JVM に自動的にスワップできる Java 用のツールです。メソッドの実装を変更できるだけでなく、シグネチャを変更したり、新しいメソッドを追加または既存のメソッドを削除したり、フィールドを追加/削除したりすることもできます。唯一できないことは、クラス階層をオンザフライで変更できるようにすることです。これは、特に Web アプリ開発にとって大きなメリットです。
.NET に似たものを見つけることができますか?
どうですか
再JIT
https://channel9.msdn.com/Shows/Going+Deep/CLR-45-David-Broman-Inside-Re-JIT
ああ、それはそうではありませんでしたが、とにかく役立つかもしれません:
ターゲットを絞ったパッチ適用による回復力のある NGen
https://channel9.msdn.com/Blogs/Charles/Surupa-Biswas-CLR-4-Resilient-NGen-and-Targeted-Patchingを参照してください。
リフレクションは .NET に組み込まれており、これらのことのほとんどを実行できるはずです (実行時の書き込み/変更)。
JRebel のように洗練され、すぐにタスクを実行できるわけではありませんが、2 つのフレームワークはそもそも構造が異なります。それらを同等と考えるのは現実的ではないかもしれません。
私見、標準的な慣行としてのランタイム置換は、ランタイムを破損させる良い方法のように思えます。このホットスワップ機能が必要な場合は、コンパイル済み言語ではなくインタープリター言語を選択したほうがよいでしょう。
また、セッションは通常避けるべきものです。ASP.NET で使用する必要がある場合は、イン プロセス プロバイダーの代わりに、すぐに使用できるいくつかの異なるプロバイダーを使用したり、代わりにプロファイルを使用したりすることもできます。 状態管理の MSDN ページ
VS 2005 以降、「エディット コンティニュ」と呼ばれる機能が組み込まれています。あなたは見てみるかもしれません... http://msdn.microsoft.com/en-us/library/ms379578(VS.80).aspx .
JRebelほど洗練されていないと思います。
似たような Rebel.NET がありますが、これにはバイナリを再構築する必要があり、実行中にコードを変更することはできません。