当我在我的MRuby代码中解救时,我收到了这个错误:
arena overflow error我不熟悉这个术语,也不熟悉如何修复它。下面是我的C程序的一个示例:
while (true) {
SDL_Event event;
if (SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) break; //exit the loop
switch(event.type) {
case SDL_KEYDOWN:
if (event.key.keysym.sym == SDLK_LEFT) { key = "left"; code = "input_received(:left)"; }
//...
printf("Key down: %s\n", key);
mrb_load_string(mrb, code);
break;
}
}
// Re-render each iteration
mrb_load_string(mrb, "render()"); //<-- this is the line that causes the error
}发布于 2014-02-18 12:21:58
使用mrb_gc_arena_save/mrb_gc_arena_restore阻塞分配临时对象的代码。
int ai = mrb_gc_arena_save(mrb);
// creating temporary objects
mrb_gc_arena_restore(mrb, ai);https://stackoverflow.com/questions/19939951
复制相似问题