C#アプリケーションでMATLAB .NETライブラリを使用した単体テスト実行後、「testhost.exe」プロセスが残留しないようにする方法はありますか?
显示 更早的评论
C#アプリケーションに、MATLAB Compiler SDKで.NETライブラリとしてビルドしたMATLABモジュールを組み込み、単体テストを実行しています。この単体テストは、MSTestやxUnitといったC#向けの自動テストフレームワーク(テストを自動で実行・管理する仕組み)を利用して実施しています。
テストを実行すると、「testhost.exe」というプロセスが起動します。このプロセスは、MSTestやxUnitなどのテストフレームワークがテストコードを実行する際に、その実行環境(ホスト)として自動的に立ち上がるのが仕様のようです。従って、C#コード内でMATLAB .NETライブラリを呼び出す場合のみ、「testhost.exe」プロセスが起動します。該当する呼び出しをコメントアウトしてMATLABの処理を行わないようにした場合は、このプロセスは起動しません。
しかし、すべての単体テストおよび.NETライブラリの処理が正常に終了した後も、「testhost.exe」プロセスがタスクマネージャー上に残り続けることが確認されました。このようなプロセスの残留は、リソースが正しく解放されていないことを示唆しています。そのため、繰り返しテストを実施したり、アプリケーションをデプロイしたりする際に、リソースリークなどの問題が発生する可能性があり、対策が必要だと考えています。
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 MATLABCompiler SDK 入門 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!