プロジェクトでCassiniDevServerを使用しています。CassiniDevServer クラスのオブジェクトを作成し、適切な引数を渡してその start() メソッドを呼び出しました。
サーバーは Web ページをホストし、ブラウザーで正しくレンダリングします。しかし、しばらくしてから更新すると、ブラウザは
ローカルホストに接続できません:ポート番号
しばらくするとサーバーが停止するようです。なぜそうなのですか?どうすればこれを回避できますか? ガベージコレクションされていますか?
次のメソッドを持つクラス MyCassiniDevUtil があります。
public CassiniDevServer launchWebsite(string path, string navigate, int _portNo)
{
CassiniDevServer _server = new CassiniDevServer(); ///server
cassiniServerList.Add(_server);
_server.StartServer(path, _portNo, "/", "localhost");
portNo = _portNo;
System.Diagnostics.Process.Start("http://localhost:" + portNo +
"/" + navigate);
return _server;
}
呼び出しコードでオブジェクトを作成し、MycassiniDevUtil
このメソッドを呼び出します。このメソッドは、現在作成されているサーバー インスタンスへの参照を返します。この参照を呼び出し元のコード クラスに割り当てます。
したがって、実際には両方のクラスへの参照がありますが、それでもガベージコレクションが行われていると感じています。または、そうでない場合は、ブラウザを更新して数分後に接続できないと表示される理由がわかりません...