// Base timer event static void base_timer(BSP_TIMER *tmr) { if (!tmr) { return; } // Script garbage collection if (core_settings.script_gc_interval) { if (0 == (tmr->timer + 1) % (core_settings.script_gc_interval * 10)) { trigger_gc(MAIN_THREAD); } if (0 == (tmr->timer % core_settings.script_gc_interval)) { trigger_gc((tmr->timer / core_settings.script_gc_interval) % core_settings.static_workers); } } // Online autosave if (core_settings.online_autosave_interval) { if (0 == tmr->timer % core_settings.online_autosave_interval) { // Auto save } } // External callback if (core_settings.ext_timer_callback) { core_settings.ext_timer_callback(tmr); } return; }
static void test_sysctls(int before_inflight, int before_openfiles) { int after_inflight, after_openfiles; trigger_gc(); after_inflight = getinflight(); if (after_inflight != before_inflight) warnx("%s: before inflight: %d, after inflight: %d", test, before_inflight, after_inflight); after_openfiles = getopenfiles(); if (after_openfiles != before_openfiles) warnx("%s: before: %d, after: %d", test, before_openfiles, after_openfiles); }