Closed manabinohibi closed 1 year ago
どうもありがとうございます! 確認しつつ修正します.
いえ,reserved_arr_を配列ごとshared_ptrとして管理しているので,配列まるごとElementHolder側でも持つ必要があります.
なるほど.今回の場合はある一つの要素だけ参照できればいいけど,実装上そうしないといけないってことであってますか?
今回の場合はある一つの要素だけ参照できればいいけど,実装上そうしないといけないってことであってますか?
そうですね,ElementHolder
から参照したいのは1つだけですが,Pool側では配列まるごとshared_ptr
化しなきゃいけないっていう実装上の理由です.
@baycedar https://github.com/dbgroup-nagoya-u/pmwcas/pull/14#pullrequestreview-1168041885 の修正です. まだできていないのですが,教えてほしいことがあるのでPR出します.
ElementHolder
の2つのメンバ変数(desc_
とis_reserved_
)は,それぞれ記述子配列の要素と占有状態配列の要素(へのアドレス)を保持する,という構造で間違ってないでしょうか? それだと思って実装してますが,shared_ptrうまく渡せなくて困ってます.また,
ElementHolder
のコンストラクタはstd::make_unique<ElementHolder>
したときに呼ばれていますか?お忙しいところ恐縮ですが,ご教授願います.