对一个文件的同步操作,实现读写的同步。
如:操作者1正在写文件时,操作者2不能读、写文件(必需等待操作者1写完)
比如文件名:D:/text.txt
如何实现同步?

解决方案 »

  1.   

    synchronized(****) 
    //////////////////////
    class Foo implements Runnable
    {
           private byte[] lock = new byte[0];  // 特殊的instance变量
        Public void methodA()
    {
           synchronized(lock) { //… }
    }
    //…..
    }
    注:零长度的byte数组对象创建起来将比任何对象都经济――查看编译后的字节码:生成零长度的byte[]对象只需3条操作码,而Object lock = new Object()则需要7行操作码。
      

  2.   

    http://blog.csdn.net/kingfish/archive/2005/05/06/372698.aspx