Rekayasa Perangkat Lunak
19 Sep 2026
6 min read
Generation Counter Menjaga Handle yang Dipakai Ulang Tetap Terikat ke Resource yang Tepat
Handle yang ringkas sering direpresentasikan sebagai integer karena murah untuk disimpan, disalin, dibandingkan, dan diteruskan melewati batas API. Pada resource manager berbasis tabel, integer tersebut dapat berupa index ke array slot. Representasi ini bermasalah saat sebuah slot dilepas lalu dipakai kembali. Handle lama dapat menunjuk resource baru yang kebetulan menempati index yang sama. Kegagalannya bukan akses di luar batas array. Index tersebut bisa sepenuhnya valid. Masalahnya ada pada identitas: handle menyebut lokasi penyimpanan, sementara caller memperlakukannya sebagai identitas resource yang sebelumnya menempati lokasi itu.