Go language part 6 (70レス)
Go language part 6 http://mevius.5ch.net/test/read.cgi/tech/1747750228/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
22: デフォルトの名無しさん [sage] 2025/06/14(土) 21:29:08.75 ID:dtGV1Vl4 >>20 依存関係の循環じゃなくて参照の循環は普通にあるよ 例えば親コンポーネントがその上に乗っている子コンポーネントからの通知をコールバックで受け取るケースでは循環参照が発生する http://mevius.5ch.net/test/read.cgi/tech/1747750228/22
26: デフォルトの名無しさん [sage] 2025/06/14(土) 22:56:09.38 ID:/OxuSDvW >>22 そこは整理しないといけないと思う(といっても俺はRustは詳しくないが) ・単なる循環参照(親→子→親で、まとめて廃棄可能=寿命が同一のオブジェクト間の相互参照…Rustでも楽勝) ・寿命がバラバラのオブジェクト同士の複雑な相互参照(…Rustで無理なのは多分これ) コールバックの結果に「親」も含めて返し、子としては自分でも参照できるようにしておく、 つまりxhr/fetchで {requester: parent, response: Response} で返せば循環参照自体は発生するが、 基本的にこの手のResponseは各所に回覧して終わり、 必要なら各自コピーとっとけ、で、回覧修了後に廃棄、で何も問題ない だから前者であって、後者の「Rustで苦労するタイプの『循環参照』」にはならない Rustで対応無理なのは、Rustの性質上、(ここらへんからだいぶ間違いが入るかもだが) ・誰が所有権を持ってるのか(=そのローカルで誰が最長寿命なのか) ・誰が借りるのか(=所有権保持者より短寿命) をソース上で確定させないといけないので、 A->Response B->Response とResponseを複数のオブジェクトから参照させる場合、AとBのどちらが寿命が長いか分からないと詰むし、 これらが複雑怪奇に相互参照してる場合、基本的に ・誰が最長寿命なのか(=誰が所有権を持つべきか) が静的に確定してないと詰む、という事(だと思う) http://mevius.5ch.net/test/read.cgi/tech/1747750228/26
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.021s