hotspot/src/share/vm/memory/resourceArea.hpp
void reset_to_mark() {
{- -------------------------------------------
(1)
---------------------------------------- -}
if (UseMallocOnly) free_malloced_objects();
{- -------------------------------------------
(1) ResourceArea の値 (Chunk 等) を記録していた値に戻す.
---------------------------------------- -}
if( _chunk->next() ) // Delete later chunks
_chunk->next_chop();
_area->_chunk = _chunk; // Roll back arena to saved chunk
_area->_hwm = _hwm;
_area->_max = _max;
{- -------------------------------------------
(1)
---------------------------------------- -}
// clear out this chunk (to detect allocation bugs)
if (ZapResourceArea) memset(_hwm, badResourceValue, _max - _hwm);
_area->set_size_in_bytes(size_in_bytes());
}
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.