private void _add(Object pojo) { if (tempPath == null) tempPath = "data" + File.separator + key; if (tempFile == null) { tempFile = "" + UUID.randomUUID(); } // 创建一个lock文件 File lockFile = FileUtil.openFile(tempPath, tempFile + ".lock"); // 将文件加锁 FileLock fileLock = FileUtil.tryLockFile(lockFile); if (fileLock == null) { tempFile = "" + UUID.randomUUID(); lockFile = FileUtil.openFile(tempPath, tempFile + ".lock"); fileLock = FileUtil.tryLockFile(lockFile); } // 将temp文件打开 File file = FileUtil.openFile(tempPath, tempFile + ".data"); FileUtil.writeObjectToFile(pojo, file, true); // 存储完毕,将文件解锁 FileUtil.unlockFile(fileLock); objListSize++; }