尝试将Ruby 1.8.7移植到emscripten,我有一个无限循环,通过rb_eval_string
使用C API对ruby做一些事情。现在,如果我在循环中只做puts "Hello World"
,则没有泄漏。接下来,如果我从主循环调用my_func_one
,仍然没有内存泄漏,但对于my_func_two
,内存使用量不断增加。这些功能定义为
def my_func_one
puts "Hello World"
end
def my_func_two
puts "Hello World"
return
end
这是一个错误还是我做错了什么?
编辑:我的C代码是
void main_update_loop() {
rb_eval_string("my_func_one");
}
其中主循环设置为emscripten_set_main_loop(main_update_loop, 0, 1);
。我使用memoryprofiler.js