लॉग विधि ब्लॉक नहीं होना चाहिए?यह कोड कैसे डेडलॉक नहीं करता है?
namespace Sandbox {
class Program {
static void Main(string[] args) {
var log = new Logger();
lock (log) {
log.Log("Hello World!");
}
}
}
public class Logger {
public void Log(string message) {
lock (this) {
Console.WriteLine(message);
}
}
}
}
संभावित डुप्लिकेट [लॉक एक्क्यूवर्ड और लॉक करने के लिए और प्रयासों को लॉक न करें: क्या सी # लॉक फिर से प्रवेश कर रहे हैं?] (Http://stackoverflow.com/questions/4846010/lock-aqcuired-and-further-attempts-to -lock-do-not-block-are-c-locks-re-entrant) –