問題タブ [retaincount]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
302 参照

ios - keepCount は NSDate の正しい情報を提供していますか?

私は NSDate プロパティを持っています

.h で

.m

このコードを実行した後、[tempStartDate retainCount]= 1 - 正常ですか? = 2self.pageStartDate = tempStartDateより書くと。[pageStartDate retainCount]

NSDateの正しい使い方はありますか?

0 投票する
3 に答える
2511 参照

ios - なぜretainCount=2-リリース後ですか?

私はこのコードを使用します。

クリックしてuibuttonにすると、ビューはカウント= 2を保持します。なぜこれが発生するのですか?

0 投票する
4 に答える
554 参照

objective-c - UIButtonは、タッチ後にカウンターの増加を保持します

同じカスタムタイプのオブジェクトのセットを作成しています。すべてのオブジェクトにはメソッドshowDeleteButtonがありましたhideDeleteButton。削除ボタンを非表示にすると(削除)、押されたボタンのretainCounter==2であることがわかりました。

ここにコードがあります:

}

}

}

したがって、2番目の方法で押されたボタンNSLogの場合、RC == 2と表示されます!何か案は?クラスの外部からdeleteButtonにアクセスできないことは100%確信しています。

0 投票する
1 に答える
368 参照

iphone - ファクトリ メソッドでのメモリ リークの処理

最後に静的ライブラリとして出荷される客観的な C フレームワークを開発しています。しかし、そのライブラリを実際のアプリケーションに (静的ライブラリを追加することによって) リーク ツールに統合すると、いくつかのメモリ リークが存在することがわかります。

シナリオの例を次に示します。

dealloc で testNumber 変数を解放しても、Leaks ツールで alloc 位置でメモリ リークが発生します。ここで何が問題になる可能性がありますか?

また、これはユーザーが呼び出すために提供されるライブラリであるため、これらの変数をライブラリ コードから解放することはベスト プラクティスですか?

ありがとうございました

0 投票する
1 に答える
518 参照

objective-c - KVO が NSMutableArray のすべてのオブジェクトを保持しているのはなぜですか?

KVO が観察されているすべての値を保持している理由を理解しようとして、私は本当に苦労しています。

シナリオ: 弱い参照を持つ NSMutableArray があります。(保持と解放の両方に NULL を持つ CFArrayCreateMutable と Callback で設定します)。つまり、追加されたオブジェクトは決して保持/解放されません。

NSMutableArray の値を監視する NSArrayController があります。

しかし今では、NSMutableArray のすべてのオブジェクトも保持されます。なぜこれが起こっているのですか、どうすればこれを止めることができますか?

0 投票する
1 に答える
320 参照

objective-c - 保持カウントが0に達したときにのみNSMutableArrayからオブジェクトを削除するにはどうすればよいですか?

私はretainCountをチェックまたは使用することになっていないことを知っていますが、保持カウントが0になった後でのみオブジェクトをNSMutableArrayから削除する方法があるかどうか疑問に思っています。

基本的に、オブジェクトを配列に追加し、それらのオブジェクトを他のウィンドウ間で共有したいと思います。ウィンドウがそれを使用するとき、私は保持カウントを1増やしたいです。それがもう使われなくなったとき、私はそれを減らしたいです。ただし、一部のウィンドウでまだ使用されている場合は、他のすべてのウィンドウで使用できるようにしたいと思います。すべてのウィンドウで使用されなくなったら、アレイから削除して完全に解放します。

ありがとう!

0 投票する
0 に答える
401 参照

uiview - UIViewsのsubviewsプロパティを呼び出すと、サブビューの保持カウントが1増加しますか?

私はこのコードを持っています:

これは「予期される」動作ですか? もしそうなら、根底にあるロジックは何ですか?

0 投票する
1 に答える
124 参照

objective-c - iPhone のデザイン パターンとメモリ管理の問題

私の iPad アプリケーションには、単一の UINavigationController と、タブとして機能する複数の viewController があります。タブに特定のカスタムルックが必要だったので、私は UITabbarController を使用していません。そのため、テーブルビュー全体とセルロジックをカプセル化する単一の UITableViewController のサブクラスであるさまざまなコントローラーをロードしています。画面の下部。

私が実装したデザインを見ると、[現在行っている]ビューをプッシュ/ポップする必要がなく、一度に1つのviewControllerを配置する必要がないため、navigationControllerは実際には必要ありません。

私が今やったことは次のとおりです。

  1. appDelegate の didFinishLaunchingWithOptions メソッドで、ナビゲーション コントローラーを次のように割り当てています。

    /li>

そして、私のメソッドsetViewController:param:では、渡されたIDに応じて、以下のように適切なviewControllerをロードしています:

起こっているのは、rootViewControllers の割り当てが解除されていないため、このように開始された私の viewControllers のいずれかです。新しいviewControllerごとに毎回navigationControllerをこのように初期化するのは間違っているようです.ルートView Controllerへの参照を保持しているため、以前のviewControllerで保持されていた参照カウントを気にせずに何度も初期化しています.

いつでも1つのviewControllerだけが必要なため、より良いアプローチは何でしょうか?

0 投票する
5 に答える
1673 参照

objective-c - ウィンドウ addSubview リリースの問題

アプリのアプリデリゲートについて何か疑問に思っていました。なぜ私はこのようにリリースできないのですか:

-addSubviewメソッドの保持カウントが 1 増加することはほぼ確実でした。では、コントローラーを離すとクラッシュするのはなぜですか? なぜデリゲート以外の別のクラスで機能するのですか?

ありがとう !

0 投票する
2 に答える
134 参照

objective-c - NSMutableArray の可視性に関する問題 / 保持

さて、私は NSMutableArray クラスに少し慣れていないので、明らかな何かが欠けていると思います。my.m のように、オブジェクトに NSMutable Array をウィンドウ コントローラーに渡します。

私はそのようにsummaryWindowオブジェクトにレシーバーメソッドを持っています:

NSLog に問題はありません。同じオブジェクト (summaryWindow) に次のメソッドがあります。

これで、globalStatusArray が .h ファイルで次のように宣言されました。

initWithArray を使用しているため、これを保持する必要はありません。

別の IBAction メソッドでこの値にアクセスしようとすると:

NSMutable 配列がヌルです

私は値を取得するために独自の方法を使用しようとしました。参考までに、 aBuffer も my .h で宣言されています。