我有一些看起来像这样的代码:
__attribute__((section("__DATA,__mysection"))) char *mumble;
...
mumble = GC_MALLOC(100);
...
我正在使用 Boehm 垃圾收集器。我希望 mumble 指向的数据是安全的,因为它仍然存在。但实际上,它是被收集和重复使用的。我检查了 GC_print_static_roots():似乎整个 __mysection 部分不包含在任何根中。
(我确实找到了解决方案——但有人有更简单的想法吗?)