我有一个想在 Java 应用程序中使用的 C API。我对 JNI 并不陌生,但我不知道这次 JNA 是否会是更好的选择。本机函数“RegisterCallback”通过调用函数指针从另一个线程定期发送更新。如何通过 JNI/JNA 将 Java 函数注册到此本机函数指针 (void *pFunc)?
typedef unsigned long DWORD;
typedef void* HANDLE;
typedef enum _Type
{
Update,
Result
} TYPE;
DWORD RegisterCallback(HANDLE handle, TYPE type, void *pFunc);
你怎么看?JNA 还是 JNI?示例代码非常受欢迎。