Avatar
Avatar
Iceman
ここで言ってるアリーナはポインタしか保持していないんじゃないかと思ったのですが、どうなんだろう
omochimetaru 8/30/2025 1:50 AM
そうです アリーナオブジェクトがあって、 その中にJavaラッパーオブジェクトがあって、 Javaラッパーオブジェクトの中にはlong(ポインタ)が一個だけあります これがSwiftのUnsafeMemory.allocateされたオブジェクトです クラスがそこに直接initされてる (edited)
1:53 AM
2つのアリーナにそれぞれ属するオブジェクトが参照し合う場合、アリーナが解放されてメモリ解放されても、解放されたことがもう片方のアリーナのオブジェクトからは感知できないので、dangling pointerになって不正アクセスになりえる (edited)