MaxKB/apps/maxkb/settings/mem.py
2025-11-10 15:21:22 +08:00

20 lines
540 B
Python

# coding=utf-8
import os
import gc
import threading
from maxkb.const import CONFIG
from common.utils.logger import maxkb_logger
import random
CURRENT_PID=os.getpid()
# 1 hour
GC_INTERVAL = 3600
def force_gc():
collected = gc.collect()
maxkb_logger.debug(f"(PID: {CURRENT_PID}) Forced GC ({collected} objects collected)")
threading.Timer(GC_INTERVAL - random.randint(0, 900, force_gc).start()
if CONFIG.get("ENABLE_MEMORY_OPTIMIZATION", '1') == "1":
threading.Timer(GC_INTERVAL - random.randint(0, 900), force_gc).start()