Merge branch 'main' into breaking_changes

# Conflicts:
#	Adjuster.py
#	Gui.py
#	MultiClient.py
#	setup.py
#	worlds/alttp/AdjusterMain.py
#	worlds/alttp/Main.py
This commit is contained in:
Fabian Dill
2021-02-21 20:15:07 +01:00
23 changed files with 424 additions and 404 deletions

View File

@@ -2,6 +2,7 @@ from __future__ import annotations
import logging
import multiprocessing
from datetime import timedelta, datetime
import concurrent.futures
import sys
import typing
import time
@@ -135,6 +136,7 @@ def autohost(config: dict):
multiworlds = {}
guardians = concurrent.futures.ThreadPoolExecutor(2, thread_name_prefix="Guardian")
class MultiworldInstance():
def __init__(self, room: Room, config: dict):
@@ -152,12 +154,18 @@ class MultiworldInstance():
args=(self.room_id, self.ponyconfig),
name="MultiHost")
self.process.start()
self.guardian = guardians.submit(self._collect)
def stop(self):
if self.process:
self.process.terminate()
self.process = None
def _collect(self):
self.process.join() # wait for process to finish
self.process = None
self.guardian = None
from .models import Room, Generation, STATE_QUEUED, STATE_STARTED, STATE_ERROR, db, Seed
from .customserver import run_server_process