I am looking for working theories, because I am clueless.
To my knowledge in .NET Core, ConfigureAwait(false)
is not relevant. However I have a code block that stucks on Manjuro Linux if I don't use ConfigureAwait(false)
. It doesn't stuck on Ubuntu, nor on Windows.
Environment
dotnet --version
gives 2.1.401
FYI: Manjuro Linux is Arch Linux based (so it'd likely fail on Arch, too).
Context
Relevant codeblock on GitHub: https://github.com/zkSNACKs/WalletWasabi/pull/636/files#r213737187
await Task.Delay(1000).ConfigureAwait(false);
I call this delay before I start an external process and then, after the delay, another awaited async function tries to establish connection to this process (through SOCKS5) to check if it was started properly: if (!await IsTorRunningAsync(TorSocks5EndPoint))
.
Finally I call this function from an xUnit test with dotnet test
.
Question
Any theory on why would such a thing happen?