/Finale-Interpreted-languages-C-based

Finale Interpreted Language (C-based) Implementation

Primary LanguageC++GNU General Public License v3.0GPL-3.0

Finale

运行词法分析器

cd build
./rm_build.sh lex

GC

标记-清扫回收算法

分为两个阶段

  • 标记:追踪所有活动对象
  • 清扫:将未标记的对象(垃圾对象)全部回收

三色抽象法

将存活的对象标记为黑色,非存活的对象(垃圾对象)标记为白色,初始态为垃圾对象

回收器开始遍历所有对象时,将正在处理的对象置为灰色,即白色和黑色的中间态,当处理完该对象后,回收器就将其置为黑色以表示保留该对象

心得

优化方案

  • 使用微服务(ros)
  • 多用静态库/动态库