From a3df1ad41bce6d8d3094014c6e369072e594e7be Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期一, 05 二月 2024 09:23:37 +0800
Subject: [PATCH] add func for performance
---
api/bhsgo/bhome_node.go | 27 +++++++++++++++++++++++++++
1 files changed, 27 insertions(+), 0 deletions(-)
diff --git a/api/bhsgo/bhome_node.go b/api/bhsgo/bhome_node.go
index b23125c..c3ce675 100644
--- a/api/bhsgo/bhome_node.go
+++ b/api/bhsgo/bhome_node.go
@@ -256,3 +256,30 @@
func Cleanup() {
C.BHCleanup()
}
+
+// ///////////////////////////////////////////////////
+func Request2(dest_addr *bh.BHAddress, data []byte, proc_id *string, replyPtr *unsafe.Pointer, replyLen *int, timeout_ms int) bool {
+ dest, _ := dest_addr.Marshal()
+ cpid := unsafe.Pointer(nil)
+ cpid_len := C.int(0)
+
+ creply := unsafe.Pointer(nil)
+ creply_len := C.int(0)
+
+ r := C.BHRequest(getPtr(&dest), C.int(len(dest)), getPtr(&data), C.int(len(data)), &cpid, &cpid_len, &creply, &creply_len, C.int(timeout_ms)) > 0
+ defer C.BHFree(cpid, cpid_len)
+ if r {
+ *proc_id = string(unsafeGetBytes(&cpid, int(cpid_len)))
+ *replyPtr = creply
+ *replyLen = int(creply_len)
+ }
+ return r
+}
+func CFree(p unsafe.Pointer, size int) {
+ if p != nil {
+ C.BHFree(p, C.int(size))
+ }
+}
+func SendReply2(src unsafe.Pointer, data []byte) bool {
+ return C.BHSendReply(src, getPtr(&data), C.int(len(data))) > 0
+}
--
Gitblit v1.8.0