Был один вариант, который выдавал мне в итоге ::1 (httpContextAccessor.HttpContext.Connection.RemoteIpAddress) , верно ли это?
Я в этом сомневаюсь, ибо через класс Dns я получал более развёрнутую информацию об IP адресах (Dns.GetHostEntry(Dns.GetHostName()).AddressList())
mcr.microsoft.com/dotnet/nightly/runtime:6.0.0-rc.2-alpine3.14-arm64v8
2. Не избыточна ли тут ConcurrentQueue?
3. Как сообщить основному потоку из Task.run() что все готово к обновлению карт? Я понимаю что есть Task.Result, но если Task выполняется постоянно (while true), смогу ли я это использовать?
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
</PropertyGroup>
<PropertyGroup>
<!-- Вот это самое главное -->
<PublishSingleFile>true</PublishSingleFile>
<!-- Это чтобы тащить за собой рантайм До .NET 6 будут рядом лежать нативные библиотеки jit-а и сборщика мусора-->
<SelfContained>true</SelfContained>
<!-- Это необходимо, чтобы сборщик понимал, для какой ОС нужен экзешник -->
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<!-- Это чтобы ускорить запуск -->
<PublishReadyToRun>true</PublishReadyToRun>
<!-- Эти две строки, чтобы уменьшить размер бинарника -->
<PublishTrimmed>true</PublishTrimmed>
<TrimMode>link</TrimMode>
</PropertyGroup>
</Project>
без доп. библиотек и массива битмапов
Возвращаемый тип будет зависеть от того, что придёт в ответе от АПИ (несколько вариантов типов, которые будут явно указаны в самом методе).
То этот самый хост, запустится в отдельном фоновом-процессе? То есть, процесс консольного приложения отдельно, а процесс-хоста - отдельно?