問題タブ [reference-counting]
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.
shared-ptr - shared_ptr <>は参照カウントを使用する必要はありませんか?
参照カウントを使用する必要shared_ptr
のない新しい標準の権利を理解していますか?このように実装されている可能性が高いというだけですか?
どういうわけか、隠されたリンクリストを使用する実装を想像することができました。N3291では「20.7.2.2.5。(8)shared_ptrオブザーバー[util.smartptr.shared.obs]」というメモに
[注:use_count()は必ずしも効率的ではありません。—エンドノート]
それは私にその考えを与えました。
memory-management - WinRT にはガベージ コレクションがありますか?
WinRT にはガベージ コレクションがありますか?
それとも、COM と同じように参照カウントを行いますか?
c++ - C ++ / CXはオブジェクトのサイクルを検出して解決しますか?
私の理解では、 C ++ / CXはガベージコレクションを使用せず、代わりに参照カウントアプローチを使用します。
参照カウントの問題は、サイクルを破棄できないことです。サイクルは通常、標準C++のweak_ptrなどの弱参照を使用して解決されます。
しかし、C ++/CXで弱参照を明示的に指定する方法を見つけることができません。それから、これはC ++/CX自体によって処理されると思います。C ++/CXがこれをどのように解決するのか疑問に思っています。
たとえば、次のコードを見てください。
C ++ / CXはこのサイクルをどのように検出しますか?
C ++ / CXはこのサイクルをどのように解決しますか?
C ++ / CXは、これらのオブジェクトのどれを「ルートオブジェクト」にし、どれを「弱参照」にするかをどのように決定しますか?
actionscript - Flash Media Server のガベージ コレクション
プロジェクトでメモリ リークが発生しました。Flash Media Server でガベージ コレクタがどのように機能しているのか疑問に思っています。
2 つの質問があります。
FMS は、サイクル参照を持つオブジェクトをメモリから解放しますか。たとえば、オブジェクト A がオブジェクト B への参照を持っている場合、およびその逆です。
アイドル タイムアウトによってアプリケーションがアンロードされた後も FMS がメモリを消費する理由。たとえば、ユーザーが接続されていなかった後、20 分後に fms がアプリをアンロードしたとします。メモリ使用量が同じレベルのまま (長期間)。
一般に、FMS コードを書く際のベスト プラクティスをいくつか見逃しています。WinXP 上の FMS 3.5.1
iphone - ARCを使用することの長所と短所は何ですか?
iOSプロジェクトで新しい自動参照カウント(ARC)メモリ管理スタイルを使用することの長所と短所は何ですか?
iOS 5.0 SDKで開発するときにARCを使用しないことを選択できますか?
新しいプロジェクトにARCまたは手動参照カウント(MRC)をお勧めしますか?
ARCを使用するアプリケーションはiOS5.0より古いバージョンのOSで実行できますか?
objective-c - NSString を保持するのはいつですか?
NSString オブジェクトが引数として渡された場合、常に次のことを行う必要がretain
ありrelease
ます。
か否か?これはいつ、どこで使用すればよいですか?
objective-c - 非NSObjectをNSMutableArrayに追加する
この最近のSOの議論は私を混乱させました。のNSMutableArrayプロトタイプaddObject:
は
id
objc.hで次のように定義されています
NSObjectまたはサブクラスをに追加するとNSMutableArray
、その保持カウントが増加し、それを削除すると、NSMutableArray
減少します。これは、またはサブクラスid type
ではないがに追加された場合、メッセージを保持および解放するために応答する必要があることを意味しますか?の定義はこれを強制するようには見えません。標準のメモリ管理メッセージに応答する必要があるのはObjectiveCディレクティブですか?NSObject
NSMutableArray
id
id type
objective-c - ARCのinitメソッドでself.propertyを参照する必要がありますか?
簡単な質問。
同じ名前で宣言されたプロパティとivarがある場合:
.hファイル内:
.mファイルで、ARCを使用している場合、initメソッドでivarまたはプロパティを使用する必要がありますか?
または、このプロパティを使用して、次のように自動参照カウントを利用する必要があります。
オブジェクトの初期化のどの時点で、ドット表記を使用してプロパティにアクセスできるようになるかはわかりません。
php - PHP メモリ リークのデバッグ。参照カウントを追跡していますか?
メモリリークしているかなり大きな PHP スクリプトがあります。どのオブジェクトがリークしているのかを特定できましたが、スクリプトのどこでリークしているのかを特定できませんでした。私のスクリプトの一部は、リークしているオブジェクトへの参照を保持しています。
PHP オブジェクトの参照カウントがいつどこで増減したかを追跡 (できればバックトレース) できる方法はありますか?
objective-c - 保持カウントが 0 のオブジェクトが解放されない
次のリーク トレースのオブジェクトが解放されないのはなぜですか?
トレースはその参照カウントが 0 であることを示しているのに、なぜ解放されないのでしょうか?
オブジェクトは、 から直接派生するカスタム クラスですNSObject
。私がそれで行うのは、それalloc
、init
それ、そこからいくつかの文字列/数値をコピーして送信することrelease
だけですが、それでもリークと見なされ、割り当てが解除されません。私はそれを楽器の割り当ての下で「生きている」と見なしているので、実際には割り当てが解除されていません。私はこれらのオブジェクトを何百も作成しているため、それらを存続させることはできません。
このオブジェクトの割り当てを解除するにはどうすればよいですか? そもそも割り当てが解除されないのはなぜですか?