Monitor和Lock的区别

    xiaoxiao2021-03-25  143

    1.Lock是Monitor的语法糖。

    2.Lock只能针对引用类型加锁。

    3.Monitor能够对值类型进行加锁,实质上是Monitor.Enter(object)对值类型装箱。

    4.Monitor还有其他的一些功能。

    示例代码:

    class Program { private static object obj = new object(); public void LockSomething() { lock (obj) { dosomething(); } } public void MonitorSomeThing() { try { Monitor.Enter(obj); dosomething(); } catch(Exception ex) { } finally { Monitor.Exit(obj); } } public void dosomething() { //做具体的事情 } }
    转载请注明原文地址: https://ju.6miu.com/read-8090.html

    最新回复(0)