From 4e739b1b368741dd73004feaa0565c7144799761 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BD=97=E7=A5=A5?= <1366971433@qq.com> Date: Fri, 17 Jul 2020 14:43:59 +0800 Subject: [PATCH] update pictures --- pictures/jvm_标记清除算法.png | Bin 14964 -> 9065 bytes pictures/jvm_标记移动算法.png | Bin 9335 -> 15016 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/pictures/jvm_标记清除算法.png b/pictures/jvm_标记清除算法.png index cf4e2812c3f550a712e832efc8e65649ae61831f..a8c0dacd410593648f7176c44a68bb2104f28b56 100644 GIT binary patch literal 9065 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 literal 14964 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 HZaw;MDuX=N diff --git a/pictures/jvm_标记移动算法.png b/pictures/jvm_标记移动算法.png index 4d18652afe45e17bcb55969f5b3250d4cfa79b80..2fd1d9de9c7a1ff9c3f1da7834e9f4521747fbdc 100644 GIT binary patch literal 15016 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 K< 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