From 1bf08c100b1a9d7e3a4082a2704b21a1718b7c5b Mon Sep 17 00:00:00 2001 From: "peng.li24" <734991033@qq.com> Date: Tue, 25 Aug 2026 21:06:51 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20kvspaceFree=20=E2=86=92=20kvspaceCl?= =?UTF-8?q?ose=EF=BC=88ABI=20=E6=94=B6=E6=95=9B=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude --- layout/src/ffi.rs | 4 ++-- runtime-rwirext_example/go/json/json.go | 6 +++--- runtime-rwirext_example/rust/term/src/main.rs | 4 ++-- runtime/src/kv.c | 2 +- runtime/src/runtime_internal.h | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/layout/src/ffi.rs b/layout/src/ffi.rs index 28bb6cbe..14c06dc9 100644 --- a/layout/src/ffi.rs +++ b/layout/src/ffi.rs @@ -16,7 +16,7 @@ pub type Handle = *mut c_void; #[allow(dead_code)] extern "C" { fn kvspaceConnect(dsn: *const c_char) -> Handle; - fn kvspaceFree(h: Handle); + fn kvspaceClose(h: Handle); fn kvspaceBytesFree(p: *mut u8, len: u32); fn kvspaceSet( @@ -244,7 +244,7 @@ impl Kv { impl Drop for Kv { fn drop(&mut self) { - unsafe { kvspaceFree(self.h) }; + unsafe { kvspaceClose(self.h) }; } } diff --git a/runtime-rwirext_example/go/json/json.go b/runtime-rwirext_example/go/json/json.go index 88a355b6..00819d2f 100644 --- a/runtime-rwirext_example/go/json/json.go +++ b/runtime-rwirext_example/go/json/json.go @@ -13,7 +13,7 @@ package json // kvspace ABI(扩展宿主自连,不经 runtime)——runtime .so 传递解析其后端实现。 extern void *kvspaceConnect(const char *dsn); -extern void kvspaceFree(void *h); +extern void kvspaceClose(void *h); extern void kvspaceBytesFree(uint8_t *p, uint32_t len); extern int kvspaceGet(void *h, const char *key, uint8_t **out, uint32_t *out_len); extern int kvspaceSet(void *h, const char *const *keys, const uint8_t *vals, @@ -620,7 +620,7 @@ func connect(dsn string) unsafe.Pointer { } func disconnect(c unsafe.Pointer) { - C.kvspaceFree(c) + C.kvspaceClose(c) } // Serve 常驻循环:注册 + 监控 .todo + 批量执行 + 交还 PC。 @@ -629,7 +629,7 @@ func Serve(dsn string) { if c == nil { return } - defer C.kvspaceFree(c) + defer C.kvspaceClose(c) register(c) for { for _, o := range ops { diff --git a/runtime-rwirext_example/rust/term/src/main.rs b/runtime-rwirext_example/rust/term/src/main.rs index 9612db75..39d2f924 100644 --- a/runtime-rwirext_example/rust/term/src/main.rs +++ b/runtime-rwirext_example/rust/term/src/main.rs @@ -46,7 +46,7 @@ unsafe extern "C" { // kvspace ABI(扩展宿主自连:读状态、写 pc) fn kvspaceConnect(dsn: *const c_char) -> *mut c_void; - fn kvspaceFree(h: *mut c_void); + fn kvspaceClose(h: *mut c_void); fn kvspaceBytesFree(p: *mut u8, len: u32); fn kvspaceGet(h: *mut c_void, key: *const c_char, out: *mut *mut u8, out_len: *mut u32) -> c_int; fn kvspaceSet( @@ -287,5 +287,5 @@ fn main() { } } - unsafe { kvspaceFree(kv) }; + unsafe { kvspaceClose(kv) }; } diff --git a/runtime/src/kv.c b/runtime/src/kv.c index 0cc94214..a5c4caeb 100644 --- a/runtime/src/kv.c +++ b/runtime/src/kv.c @@ -20,7 +20,7 @@ kvlangKv_t *kvlangKvConnect(const char *dsn) { void kvlangKvDisconnect(kvlangKv_t *k) { if (!k) return; - if (k->h) kvspaceFree(k->h); + if (k->h) kvspaceClose(k->h); free(k); } diff --git a/runtime/src/runtime_internal.h b/runtime/src/runtime_internal.h index 8e46e18d..a0d0ddd3 100644 --- a/runtime/src/runtime_internal.h +++ b/runtime/src/runtime_internal.h @@ -19,7 +19,7 @@ typedef struct { } kvspaceHead_t; extern void *kvspaceConnect(const char *dsn); -extern void kvspaceFree(void *h); +extern void kvspaceClose(void *h); extern void kvspaceBytesFree(uint8_t *p, uint32_t len); extern int kvspaceSet(void *h, const char *const *keys, const uint8_t *vals, const uint32_t *lens, uint32_t n, char *err, uint32_t err_cap);