なにげに semaphore とか初めて使ったかもしれない
try
{
await semaphore.WaitAsync();
....
}
finally
{
semaphore.Release();
}
こういうの見てるとやっぱ RAII したくなりますよね
@core using var a = await semaphore.WaitAsync(); できればよかったのだ…
@core lockステートメントは見かけ上こんな風になってるけど、Monitor.Enter()とMonitor.Exit()の糖衣構文だからねえ。