2021-12-14

物語伏線とはCやC++ポインタのようなものであり、伏線回収とはメモリが開放されるようなものではないか

まり物語ガベージコレクション機能があれば、自然伏線は回収されるのではないか

無責任伏線というポインタだけを返してはならない

それはスマートポインタのようなものでなければならない

参照をカウントしてゼロになったときにデストラクタが発動するだけでも構わない

物語の中にもきっとスコープがあるのではないか

まりスコープから外れるとスタックなどに確保された変数領域が開放されるように、

物語のある地点のスコープに含まれもの、近くてどうでもいいもの記憶からも消えていく

しかし、グローバルではないが、どれだけ広範囲なのか分からない伏線のようなものがあり、

伏線ローカルスコープを超えるわけで、

物語が如何に進行しようとも、そのポインタだけはキープしている

ときどき登場人物が思い出したかのように伏線を語るとき、参照カウントが追加される

そうやってカウントが増えたり減ったりして、

最後大団円auto release poolの中に登録された伏線がドバーッと開放されていく

から伏線にはポインタのように誰が所有しているとか責任を取るべきみたいな概念が当てはまるのかもしれない

伏線を回収しないまま終わる物語というのは、

つまるところ、メモリゴミを置いたままプロセスが終了するということであり、

それでも問題ないのはOSのように周囲が尻拭いしてくれるからである

作者はコアダンプを吐くべきだ

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん