日期:2014-05-20  浏览次数:20721 次

FileLock.lock为什么不阻塞?
FileLock   flock   =   null;

flock   =   fc.lock();

我发现在大量线程同时需要调用上面这段代码的时候,fc.lock操作并没有去阻塞等待锁现象,而是直接抛出了异常,跟这个lock方法说的阻塞不一样啊,怎么回事呢?

------解决方案--------------------
摆脱,总工就两句话,谁知道怎么回事,有可能是你其他的线程关闭了,也有可能是调用时出现了异常,再或者你锁的区域出现了问题,那段区域可能关闭了,可能中断了,你自己再看看

------解决方案--------------------
> 我发现在大量线程同时需要调用上面这段代码的时候

当第一个lock上之后在没有释放的情况下你再lock肯定有异常,仔细看异常信息.