您好,我正在使用 dart:ffi 与我的原生 c/c++ 库构建接口。我需要一种方法来获取从 c 到 dart 的回调作为 sqlite 中的示例:
int sqlite3_exec(
sqlite3*, /* An open database */
const char *sql, /* SQL to be evaluated */
int (*callback)(void*,int,char**,char**), /* Callback function */
void *, /* 1st argument to callback */
char **errmsg /* Error msg written here */
);
第三个参数sqlite3_exec
是指向回调的函数指针。所以如果我在 dart 中调用这个函数,ffi
我需要传递一个函数指针:并且在dart:ffi
Pointer
类中有一个名为fromFunction
witch 的函数接受一个 dart 静态函数和一个exceptionalReturn
; 但只需调用此函数即可获取 dart 托管函数的函数指针:(sigterm)
引发 a 并且 dart 代码不再在该过程中工作。
所以我的问题:有没有办法在 dart 中获得本机回调,如 Python、c#、..
额外:有什么方法可以包含dartino
在flutter
项目中,因为这个ForeignDartFunction涵盖了我需要的东西。