From f0fa88b43b9fae7a2011ffeb77e1311060d1bc12 Mon Sep 17 00:00:00 2001 From: Leandro Lucarella Date: Tue, 28 Sep 2010 22:57:39 -0300 Subject: [PATCH] =?utf8?q?Hacer=20variables=20globales=20m=C3=A1s=20eviden?= =?utf8?q?tes=20en=20pseudo-c=C3=B3digo?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- source/dgc.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/dgc.rst b/source/dgc.rst index 1c0b84b..9019246 100644 --- a/source/dgc.rst +++ b/source/dgc.rst @@ -455,7 +455,7 @@ Esta fase consiste de varios pasos, que pueden resumirse en el siguiente algoritmo:: function mark_phase() is - more_to_scan = false + global more_to_scan = false stop_the_world() clear_mark_scan_bits() mark_free_lists() @@ -559,7 +559,7 @@ una celda (o bloque) no se siguen sus *hijas*, solo se activa el bit de *scan* block.mark = true if block.noscan is false block.scan = true - more_to_scan = true + global more_to_scan = true Por lo tanto en este punto, tenemos todas las celdas inmediatamente alcanzables desde el *root set* marcadas y con el bit *scan* activado si la @@ -568,8 +568,8 @@ forma conservativa) iterativamente todo el *heap* hasta que no hayan más celdas para visitar (con el bit *scan* activo):: function mark_heap() is - while more_to_scan - more_to_scan = false + while global more_to_scan + global more_to_scan = false foreach pool in heap foreach page in pool if page.block_size <= PAGE // saltea FREE y CONTINUATION -- 2.43.0