remove requirement o sta thread in no gui scenarios

This commit is contained in:
zznty
2023-04-22 02:51:29 +07:00
parent 181e9297a1
commit 45068ea932
2 changed files with 18 additions and 17 deletions

View File

@@ -102,8 +102,19 @@ namespace Torch.Server
}
#endif
var gameThread = new Thread(() =>
var uiThread = new Thread(() =>
{
var ui = new TorchUI(_server);
SynchronizationContext.SetSynchronizationContext(
new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher));
ui.ShowDialog();
});
uiThread.SetApartmentState(ApartmentState.STA);
uiThread.Start();
_server.Init();
if (Config.Autostart || Config.TempAutostart)
@@ -111,16 +122,6 @@ namespace Torch.Server
Config.TempAutostart = false;
_server.Start();
}
});
gameThread.Start();
var ui = new TorchUI(_server);
SynchronizationContext.SetSynchronizationContext(
new DispatcherSynchronizationContext(Dispatcher.CurrentDispatcher));
ui.ShowDialog();
}
}

View File

@@ -12,7 +12,7 @@ namespace Torch.Server
{
internal static class Program
{
[STAThread]
[MTAThread]
public static void Main(string[] args)
{
var configurationBuilder = new ConfigurationBuilder()