問題タブ [weak-ptr]

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 投票する
5 に答える
12518 参照

c++ - weak_ptr のスレッドセーフについて

上記のコードに関して、異なるスレッドが同じ読み取りと書き込みを行うとshared_ptr、競合状態が発生することがわかっています。しかし、どうweak_ptrですか?以下のコードに競合状態はありますか? (私のプラットフォームは Microsoft VS2013 です。)

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

multithreading - weak_ptr の競合状態について

1.数日前に質問( weak_ptrのスレッドセーフについて)を投稿しましたが、現在、他の関連する質問があります。このようなことをすると、上記の例で g_w として競合状態が発生しますか? (私のプラットフォームは ms vs2013 です)

2.私が知っているように、std::tr1::shared_ptr/weak_ptrから派生したstd::shared_ptr/weak_ptr、およびboost::shared_ptr/weak_ptrから派生したstd::tr1::shared_ptr/weak_ptrは、実装に違いはありますか?特に、スレッドセーフの救済において。

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

c++ - shared_ptr、weak_ptr、および循環依存関係

私の質問はshared_ptr と weak_ptr の違いに似ていると思いますが、違いのリストではなく、それらがどのように連携するかを見ることに興味があります。

Wikipedia のshared_ptr および weak_ptr状態に関するページはweak_pointer、循環依存関係の問題を解決するために使用でき、例を示しています。

weak_pointerしかし、循環依存関係が見られないため、問題を解決する方法がわかりません。

a私は、何らかのオブジェクトが objectを指しbbどういうわけかa(weak_ptrチェーンを壊すために有向グラフエッジの 1 つの間にシムを入れて) を指していることを期待していたでしょう。

例は良くて、私の考えは悪いですか? または、問題と解決策のより良い例はありますか?

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

c++ - boost::weak_ptr は例外をスローしますか?

ここBoostのドキュメントを読んでいて、最初に次のように述べています。weak_ptr

オブジェクトへの最後の shared_ptr がなくなり、オブジェクトが削除されると、削除されたオブジェクトを参照する weak_ptr インスタンスから shared_ptr を取得しようとすると失敗します。コンストラクターは、boost::bad_weak_ptr 型の例外をスローし、weak_ptr: :lock は空の shared_ptr を返します。

これまでのところすべて明確ですが、2行後に次のように表示されます。

weak_ptr 操作が例外をスローすることはありません。

各ステートメントは何を参照していますか?

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

c++ - shared_ptr の循環依存の問題は何ですか?

共有ポインタについて読んで、使い方を理解しました。しかし、共有ポインターの循環依存の問題と、弱いポインターがそれらの問題をどのように修正するかを理解していませんでした。誰でもこの問題を明確に説明できますか?