Switch to forkserver

This commit is contained in:
George Tsiamasiotis 2024-09-29 00:10:13 +03:00
parent e10b330b04
commit 54a1b3bb15
2 changed files with 10 additions and 2 deletions

View File

@ -0,0 +1,4 @@
from .app import FrigateApp
from .config import FrigateConfig
__all__ = ["FrigateApp", "FrigateConfig"]

View File

@ -1,13 +1,13 @@
import argparse import argparse
import faulthandler import faulthandler
import multiprocessing as mp
import signal import signal
import sys import sys
import threading import threading
from pydantic import ValidationError from pydantic import ValidationError
from frigate.app import FrigateApp from frigate import FrigateApp, FrigateConfig
from frigate.config import FrigateConfig
from frigate.log import setup_logging from frigate.log import setup_logging
@ -22,6 +22,10 @@ def main() -> None:
# Make sure we exit cleanly on SIGTERM. # Make sure we exit cleanly on SIGTERM.
signal.signal(signal.SIGTERM, lambda sig, frame: sys.exit()) signal.signal(signal.SIGTERM, lambda sig, frame: sys.exit())
# Switch multiprocessing start method to forkserver (the default as of python 3.14).
mp.set_start_method("forkserver", force=True)
mp.set_forkserver_preload(["frigate"])
# Parse the cli arguments. # Parse the cli arguments.
parser = argparse.ArgumentParser( parser = argparse.ArgumentParser(
prog="Frigate", prog="Frigate",