管理されていないdllへの呼び出しを介してJavaプロセスと通信しているdotnetプロセスがあります。
状況によっては、Javaプロセスがクラッシュし、dotnetプロセスがダウンしているように見えます。例外は発生せず、プロセスはただ終了します。クラッシュすると、javaは「hs_err_pid3228」などの名前のログファイルを作成します。
アンマネージDLLとJavaプロセスを提供しているベンダーから満足を得られなかったので、Javaプロセスへの呼び出しがクラッシュした場合でも、プロセスを停止しないようにする必要がある問題を軽減しようとしています。 。
さまざまな記事を読んだことで、appdomainsを使用する可能性が高いようです-私の理論では、Javaプロセスを呼び出す機能を少しの作業で分離し、別のappdomainで実行できます。これにより、appdomainをキャッチできない場合でも可能になると思います。ダウンしている場合は、少なくともそれが発生したことを検出し、その機能を再起動します。
誰かが同じような問題を抱えていましたか?このアプローチは、appdomainの経験が豊富な方にとっては合理的だと思いますか?
さらに楽しくするために、Javaのクラッシュは実際には再現可能ではありません-それは非常にランダムに見え、appdomainへの分離をテストする方法とまだ戦っています