だから私はプログラムデザインでかなりアマチュアです。私は大学でいくつかのコースを受講しましたが、それらはすべて構文と非常に基本的な設計原則の学習に焦点を合わせています。
とにかく、私はRPCを介してrtorrentと対話するC#.Netでクライアントを作成しています。トレントクライアント情報をITorrentClientインターフェイスに保存し、トレント情報をTorrentオブジェクトに保存しています。トレントに関するデータを取得するには、ITorrentClientから関数を呼び出す必要があります。次に例を示します。
class Torrent
{
string _hash;
ITorrentClient _client;
public Torrent(ITorrentClient client)
{
this._client = client;
}
public double UploadSpeed
{
get
{
return _client.getTorrentUploadSpeed(_hash);
}
}
}
残念ながら、これは、トレントクライアントに大量のトレントがある場合(私のように)、メモリに何百もの無駄なITorrentClientが存在することを意味します。何百もの役に立たないオブジェクトが浮かんでいないようにプログラムを設計するにはどうすればよいですか?
ありがとう!