Получить IHost, чтобы освободить порт - PullRequest
1 голос
/ 02 мая 2020

Я пишу несколько интеграционных тестов. В интеграционных тестах я запускаю веб-сервер для каждого теста. Они работают нормально, но иногда порт, который им нужен (он должен быть одинаковым для каждого теста), не освобождается.

Вот как я его называю:

IHost host = CreateHostBuilder(args, baseUrl).Build();
var runTask = host.RunAsync(cancellationToken);

// Wait till the caller uses the cancellation token.
await runTask;

// This is called when the server is done hosting.
host.Dispose();

Когда каждый тест завершен, он вызывает:

cancellationTokenSource.Cancel(true);

И хотя я могу убедиться, что вызывается host.Dispose (), он не освобождает порт, когда это происходит. В конце концов он освобождается, но это занимает много времени.

Есть ли способ заставить host освободить порт, который он использует?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...