2016-09-18 12 views
0

私のクラスから一度に参照を作成して、別のシングルトンクラスにする必要があります。シングルトンクラスを保持するのに@property宣言が最適

私のインターフェイスに、以下に示すように、私は宣言する:グラブの

@property (weak, nonatomic) AudioStreamer *radioStreamer; 

、後でそのようなクラスのインスタンス:

self.radioStreamer = [AudioStreamer sharedManager]; 

これを行うにはweak最善の方法を使用していますか?私はアプリに問題はありませんし、それはすべて期待どおりに動作しますが、シングルトンを使用する場合のベストプラクティスかどうかはわかりません。

私はすべてのプロパティを使用する必要がありますか、またはivarを使用する方が理にかなっていますか?

シングルトンを扱う最良の方法について助言できる人は誰でもいます。

答えて

1

シングルトンが破壊されない場合は、weakが確実に動作します。破壊する可能性がある場合は、strongを使用します。これの多くは文脈に依存します。 weakは決して解放されないシングルトンにとってはあまり意味がありません。

weak/strongの一般的なベストプラクティスに固執すると思います。シングルトンは、効果的な目的で、あなたが参照する単なるインスタンスですが、そのクラスの単なるインスタンスになります。例えば

あなたが sharedInstanceのルックアップのオーバーヘッドに遭遇取得利便性の手段として radioStreamerを使用して(だけでなく、されていない場合は、 strongはおそらく、あなたが何をしたいの精神である。

関連する問題