From 3b289ff6cf0157f9cf96415f8bf7df50976f18a9 Mon Sep 17 00:00:00 2001 From: zhf Date: Tue, 29 Oct 2024 17:30:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=96=87=E4=BB=B6=E5=8F=A5?= =?UTF-8?q?=E6=9F=84=E6=B3=84=E9=9C=B2=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhf --- CHANGELOG.md | 3 +++ entry/oh-package.json5 | 2 +- library/oh-package.json5 | 2 +- .../src/main/ets/components/cache/FileUtils.ts | 17 ++++++++++------- oh-package.json5 | 4 ++-- 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f655b64..b402953 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## 2.0.3-rc.0 +- 修复文件句柄泄露的问题 + ## 2.0.2 - 在DevEco Studio: NEXT Beta1-5.0.3.806, SDK:API12 Release(5.0.0.66)上验证通过 - 修复改变缓存大小时,当前缓存计算错误的问题 diff --git a/entry/oh-package.json5 b/entry/oh-package.json5 index aa09560..a6c48d5 100644 --- a/entry/oh-package.json5 +++ b/entry/oh-package.json5 @@ -4,7 +4,7 @@ "name": "entry", "description": "example description", "repository": {}, - "version": "2.0.2", + "version": "2.0.3-rc.0", "dependencies": { "@ohos/disklrucache": "file:../library" } diff --git a/library/oh-package.json5 b/library/oh-package.json5 index c76d3f0..f515484 100644 --- a/library/oh-package.json5 +++ b/library/oh-package.json5 @@ -13,7 +13,7 @@ "main": "index.ets", "repository": "https://gitee.com/openharmony-sig/ohos_disklrucache", "type": "module", - "version": "2.0.2", + "version": "2.0.3-rc.0", "dependencies": {}, "tags": [ "Tool" diff --git a/library/src/main/ets/components/cache/FileUtils.ts b/library/src/main/ets/components/cache/FileUtils.ts index 156afc6..ad82340 100644 --- a/library/src/main/ets/components/cache/FileUtils.ts +++ b/library/src/main/ets/components/cache/FileUtils.ts @@ -39,14 +39,13 @@ export class FileUtils { * @param path 文件绝对路径及文件名 * @return number 文件句柄id */ - createFile(path: string): number { - let num = -1; + createFile(path: string) { try { - num = fs.openSync(path, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE).fd + let num = fs.openSync(path, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE).fd + fs.closeSync(num); } catch (e) { console.log("createFile err :" + e) } - return num; } /** @@ -90,8 +89,10 @@ export class FileUtils { * * @param path 文件绝对路径 */ - clearFile(path: string): number { - return fs.openSync(path, fs.OpenMode.TRUNC).fd + clearFile(path: string) { + let file = fs.openSync(path, fs.OpenMode.TRUNC).fd + fs.closeSync(file); + return } /** @@ -190,6 +191,7 @@ export class FileUtils { let length = fs.statSync(path).size let buf = new ArrayBuffer(length); fs.readSync(fd, buf) + fs.closeSync(fd); return buf } @@ -204,6 +206,7 @@ export class FileUtils { let length = stat.size; let buf = new ArrayBuffer(length); await fs.read(fd, buf); + await fs.close(fd) return buf } @@ -262,7 +265,7 @@ export class FileUtils { let fd = fs.openSync(path, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE).fd fs.truncateSync(fd) fs.writeSync(fd, content) - fs.fsync(fd).then(() => { + fs.fsync(fd).finally(() => { fs.close(fd).then(() => { }).catch((err: BusinessError) => { console.error("close file failed with error message: " + err.message + ", error code: " + err.code); diff --git a/oh-package.json5 b/oh-package.json5 index e752025..0515ed9 100644 --- a/oh-package.json5 +++ b/oh-package.json5 @@ -6,6 +6,6 @@ "name": "disklrucache", "description": "example description", "repository": {}, - "version": "2.0.2", + "version": "2.0.3-rc.0", "dependencies": {} -} +} \ No newline at end of file -- Gitee