Передача строк между библиотеками на go и скриптами на Python
Пытаюсь связать простой скрипт на Python с своей библиотекой на go. Код ниже. Смысл в том чтобы передать строку в библиотеку и получить полученное значение. Но выполнение кода вызывает ошибку со стороны go. Помогите разобраться, что я делаю не так. Код на Python:
import ctypes
lib = ctypes.CDLL("./lib.dll")
my_str = 'abc'
my_str_b = my_str.encode('utf-8')
c_str = ctypes.c_char_p(my_str_b)
my_new_str = lib.StringTest(c_str)
print(my_new_str)
Код на Golang:
package main
import (
"C"
)
//export StringTest
func StringTest(my_val string) string {
return my_val + "123"
}
func main() {}
Возникающая ошибка:
runtime: out of memory: cannot allocate 140733042393088-byte block (4128768 in use)
fatal error: out of memory