尝试锁定同步语句

时间:2015-02-23 02:55:36

标签: java multithreading

Java synchronized statement是一种保护数据资源不被多个线程同时访问的方法。可以通过将同步作为关键部分或互斥锁对象X来完成。

class MyClass
{
    int a;
    object X = new object();

    void Foo()
    {
        synchronized(X)
        {
            a++;
        }
    }
}

有没有办法对X进行试锁而不是像这样的锁?

void Foo()
{
    if(try_synchronized(X)==true)
    {
        a++;
    }
}

不幸的是,this Q&A说ReentrantLock是另一种方式,但 synchronized 关键字是在Java VM下实现的,所以这个问题是不同的。

0 个答案:

没有答案