`
lhgyy00
  • 浏览: 143803 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

锁定文件的一部分,独占打开文件,是测试拷贝处用的

阅读更多
import java.io.File;
import java.io.RandomAccessFile;
import java.nio.channels.FileChannel;
import java.nio.channels.FileLock;

public class testFileLock2 {
    public static void main(String[] args) throws Exception {
        File file  = new File("c:\\test"); //创建文件夹的文件
        String[] files = file.list();//获得列表
       
        for (String s : files) {//遍历每一个文件,并在文件上加锁
            RandomAccessFile raf  = new RandomAccessFile(new File(s),"rw");
            FileChannel fc = raf.getChannel();
            FileLock fl = fc.tryLock();
           
            if(fl.isValid()){//判断
                System.out.println(s+" 文件 get the lock!");
            }
        }
        Thread.sleep(2000000);//没有关闭流使文件处于打开的状态
    }
}
 
分享到:
评论

相关推荐

    MAPGIS地质制图工具

    1、 首先用Section打开工程文件,把所有文件设为编辑状态,然后对地形等高线文件进行高程赋值——新建线属性高程字段(原MapGis需要这样做,用Section剖面图菜单下的自动赋高程不需新建此字段(拖动操作))。...

    subversion中文手册svn-book

    - **外部定义**:引用版本库外的文件作为本地文件的一部分。 - **Peg和实施修订版本**:指定版本进行操作。 - **Changelists**:将多个更改分组,便于管理和提交。 - **网络模型**: - **请求和响应**:客户端向...

    svn配置管理工具 svn配置管理工具

    2. 文件锁定(Locking):对于需要独占编辑的文件,可以使用锁定机制防止他人同时修改。 3. 修订版(Revision):每次提交都会生成一个修订版,可以通过修订版号回滚到任意历史状态。 4. 属性(Properties):可以为...

    奇虎2012笔试面试题

    - **作用**:文档对象模型的一部分,用于存储数据并管理数据的打开、保存等操作。 5. **CView**: - **作用**:视图对象,用于显示文档数据,提供用户界面和文档数据之间的交互。 6. **CFrameWnd**: - **作用**...

    全国计算机一级考试考前练习3.pdf

    8. **要将Word文档拷贝到软盘,应使用“文件”菜单中的“另存为”命令**。这将创建文档的一个副本,并可以选择保存到不同的位置,如软盘。 9. **显示出水平标尺时,当前的视图方式可能是普通视图或页面视图**。这两...

    最新JDK教程(CHM版)

    - **定义**:允许进程独占访问文件的某个部分,防止其他进程同时修改同一部分数据。 - **操作**:通过`FileChannel.tryLock()`或`FileChannel.lock()`方法实现文件的锁定。 ##### 1.3 非阻塞I/O(NON-BLOCKING)和...

    数据库原理考研练习题1.pdf

    5. **后备副本**:后备副本是数据库备份的一部分,用于数据转储,以防止数据丢失或系统故障。它们通常用于灾难恢复策略。 6. **事务锁**:在并发控制中,事务可以对数据加锁以确保数据的一致性。共享锁用于读操作,...

    Linux Kernel Networking

    - **互斥锁**:互斥锁是一种更为通用的锁定机制,允许一个时间只有一个进程持有该锁。 - **信号量**:信号量是一种用于同步进程的机制,可以控制多个进程对共享资源的访问。 - **读写锁**:读写锁允许多个读进程...

    多线程同步大量数据转录的多线程和同步

    在给定的部分内容中,提到了使用 `ReaderWriterLockSlim` 类来实现多线程环境下的数据同步。`ReaderWriterLockSlim` 是 .NET Framework 中提供的一种锁机制,它支持读取者优先的锁定策略。这意味着当有多个读取线程...

    Linux-Kernel Memory Model.pdf

    Linux内核内存模型是操作系统内核设计中的一个重要部分,涉及到内存操作的顺序和一致性问题。在多核处理器和多线程操作环境下,维护内存一致性尤为重要,以保证数据的准确性和程序的正确执行。Linux内核通过一系列...

Global site tag (gtag.js) - Google Analytics