场景:多个地方同时向一个文件读写据,如何保持操作互斥性,即一次只能一个操作(比如读或写)进行。
原文:http://blog.csdn.net/hbcui1984/archive/2006/12/12/1440226.aspx
我们希望在一个线程在操作某个文件的时候,其他线程不能对该文件进行读或写操作,要怎么才能实现呢?利用java提供的synchronized似乎无法完成,因为每个线程是在程序中动态抛出的.郁昧了一天之后,我终于找到了一个解决办法,就是利用java.nio包中的FileChannel对文件进行加锁.
具体实现方法如下:
1.写文件的线程