LlamaProcessManager

Verwaltet den Lebenszyklus eines lokalen LLAMA-Server-Betriebssystemprozesses.

Verantwortlichkeiten: – Starten des Serverprozesses mit einer vom Aufrufer bereitgestellten Befehlszeile

  • Erfassen von stdout/stderr in Daemon-Threads

  • Abfragen des Endpunkts „/health“, bis der Server bereit ist

  • Ordentliches + erzwungenes Herunterfahren

  • Einen freien TCP-Port finden

Parameters

log

Logging callback (LogLevel, message).

Constructors

Link copied to clipboard
constructor(log: (CodBi.LogLevel, String) -> Unit)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

The running server process, or null if not started.

Functions

Link copied to clipboard
fun findFreePort(preferredPort: Int): Int

Findet einen freien TCP-Port beginnend bei preferredPort. Versucht nach oben (bis zu 20 Versuche), bis ein Der verfügbare Port wurde gefunden. Fällt auf einen vom Betriebssystem zugewiesenen kurzlebigen Port zurück, wenn dies bei allen geprüften Ports der Fall ist beschäftigt.

Link copied to clipboard

Returns true if the server process is alive.

Link copied to clipboard
fun launchProcess(command: List<String>, workingDir: File, port: Int): Boolean

Startet den LLAMA-Server-Prozess und wartet darauf, dass er fehlerfrei ist.

Link copied to clipboard

Stoppt den Serverprozess ordnungsgemäß. Versucht zuerst „destroy()“ und dann „destroyForcably()“ nach a Time-out.