問題タブ [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.
objective-c - 保持カウントを繰り返し、繰り返しごとにリリースを呼び出す、Objective-Cのこのコードについてどう思いますか?
私はまだ、私が取り組んでいるプロジェクトで見つけたこのコードを理解しようとしています。私が尋ねる前に、それを作成した人が会社を辞めた場所です。
これはコードです:
私の知る限り、Objective-Cのメモリ管理モデルでは、最初のルールは、別のオブジェクトを割り当てるオブジェクトも、将来そのオブジェクトを解放する責任があるということです。それが私がこのコードの意味を理解していない理由です。何か意味はありますか?
ios - UIView の「dealloc」が呼び出されない
シンプルなビューコントローラーがあります
まず、GLViewController を初期化し、MGSplitController で詳細ビュー コントローラーとして定義されている UINavigationController にプッシュします。しかし、コントローラーを元に戻すと、GLView クラスの dealloc メソッドが呼び出されません。GLViewController の dealloc メソッドの self.view.retainCount の値が 7 で、ビュー オブジェクトの参照カウンタが 7 増加しているように見えますが、これは何ですか?
objective-c - NSString のコピー、保持、および参照カウント
copy を使用し、NSString プロパティで保持し、それをローカル変数に割り当てると、実際にはどういう意味ですか?
文字列の値を次のような別の NSString 変数に代入すると:
name1 と name2 の保持数はどうなりますか?
ここで name1 と name2 の保持カウントはいくつになりますか?
objective-c - iOSアプリケーションでのメモリ管理について疑問がありますか?
iOSアプリケーションでNSObjectを保持する必要はありますか?
保持カウント==1、保持カウント= 2、.....などの違いは何ですか?
プロパティはインスタンス変数の保持と解放をどのように処理できますか?
ios - performSelector:withObject:afterDelay: はどのように機能しますか?
を呼び出した後、それが変更されていることがわかりまし[self performSelector:@selector(method1:) withObject:self.tableView afterDelay:3];
たself.tableView
かretainCount
? なんで?
どうもありがとうございました!
objective-c - 最近作成されたオブジェクトの保持カウントが大きい。Objective-C
ボタンが押されたときにロードしているView Controllerの保持カウントが過剰になるという奇妙なケースが発生しています。
これはコードです:
IBAction New の初回実行時、作成直後の保持カウントは 5 です。(1 でなければなりません)。
ViewSpace オブジェクトをアンロードする必要がある場合、モーダル ビューを削除して前のオブジェクトを解放するために、viewSpaceWasDismissed 関数を呼び出します。
問題は、保持カウントが 0 に達せず、ViewSpace の dealloc メソッドが呼び出されず、メモリ リークが発生することです。
私の質問は、最近作成された ViewController に 5 つの保持がある可能性はありますか? 以前に作成されたことがないことを確認しました。
ありがとう。
objective-c - Should I use __unsafe_unretained for temp variables?
Let's say I want to create a temporary variable, e.g.:
To point to another long-living variable:
/li>To point to an object I just created.
/li>
These temporary variables don't need to be retained because the objects they point to are guaranteed to keep positive retain counts for as long as the temporary variables are in scope. So, should I declare them as __unsafe_unretained
?
objective-c - iOSでのNSMutableDictionaryによるメモリ管理
自動リリースを使用せずに、NSMutableDictionayのメモリを手動で管理します。そして、mutableDictonaryのすべてのオブジェクトはNSArrayであり、mutableDictionaryに1つの配列を追加するたびに、
問題は、メモリリークがないことをどのように保証できるかということです。Deallocで[mutableDictrelease]を直接使用するのは良いことですか?mutableDictのretainCountは、そのオブジェクト(保持されている配列)のすべてのretainCountの合計に等しいですか?
iphone - 保持カウントが -1 を返す理由
私が知っているように、オブジェクトの保持カウントが0になると、そのdeallocが呼び出されます.しかし、保持カウントを-1として取得しています。どういう意味ですか?
次のコードを使用しています-
出力:
メソッドstringWithStringによって返される文字列: release を取得したとき ?
objective-c - decodeObjectForKey を使用する際のretainCounts の意味:
私は奇妙な状況にあり、誰かが光を当ててくれることを願っています。カスタム オブジェクトにプロトコルを実装していNSCoding
ますが、 でメモリ リークが発生していinitWithCoder:
ます。私はこのようなものを持っています:
このオブジェクトには他にも多くのプロパティがあり、配列、文字列、プリミティブ (double、int) などがありますが、このメソッドでは一貫してメモリ リークが発生しています。decodeObjectForKey:
インスツルメンツは、ライン上の各デコードでリークが発生することを教えてくれます。10 個以上のオブジェクトの配列内の各カスタム クラス内のすべてのデコードされたオブジェクトをリークすると、メモリが増加し始めます。
しかし、本当に困惑したのは、このコードの出力:
は「3」です!
うわー、それらのすべての保持はどこから来ているのですか? 私を殴る。しかし、これらすべてのリークについて知りたいです。ありがとう!