Resolve the `StatePort` when the other components call it.

pull/4712/head
Minghao Hu 2024-02-12 22:49:57 +09:00
parent af3c1dc039
commit 74149b761f
1 changed files with 16 additions and 6 deletions

View File

@ -11,14 +11,24 @@ namespace v2rayN.Handler
public static LazyConfig Instance => _instance.Value; public static LazyConfig Instance => _instance.Value;
private int _statePort; private int? _statePort;
public int StatePort { get => _statePort; } public int StatePort
{
get
{
if (_statePort is null)
{
_statePort = Utils.GetFreePort();
}
return _statePort.Value;
}
}
private Job _processJob = new(); private Job _processJob = new();
public LazyConfig() public LazyConfig()
{ {
_statePort = Utils.GetFreePort();
SqliteHelper.Instance.CreateTable<SubItem>(); SqliteHelper.Instance.CreateTable<SubItem>();
SqliteHelper.Instance.CreateTable<ProfileItem>(); SqliteHelper.Instance.CreateTable<ProfileItem>();
SqliteHelper.Instance.CreateTable<ServerStatItem>(); SqliteHelper.Instance.CreateTable<ServerStatItem>();