为什么要用Mutex来锁定
本文关键字:锁定 Mutex 为什么 | 更新日期: 2023-09-27 18:00:23
为什么有人会使用一个新的互斥锁来进行锁定?
public class Job
{
private static Mutex mutex = new Mutex();
public void Execute(Context context)
{
lock (mutex)
{
// some work here
}
// some more work here
}
}
如果这真的是所述Mutex
的唯一用途,那么它确实没有意义。一个正常的object
就足够了。
为什么有人会使用一个新的互斥锁来进行锁定?
可能是因为教程中有人说"Mutex",他们实际上想到了Mutex
对象。将其用作lock
没有任何好处或任何特殊效果。任何引用类型都有一个Object Header Word,使其有资格用作lock
对象。
附带说明-使用static
对象进行锁定将导致Job
类的任何实例在另一个实例持有该锁定时被阻止。