https://learn.microsoft.com/zh-cn/dotnet/csharp/language-reference/statements/lock?redirectedfrom=MSDN