0
我有用C++实现观察者模式的代码。我创建了类似于C++代码的Java JNI代码来注册观察者。当我在Java中注册一个观察者时,它调用一个在C++中创建监听器的方法native
。如何在C++中实现观察者模式,在JNI中调用Java方法
我想用C++中的方法调用来调用已注册的Java观察者中的等效方法。我通过将JNIEnv
传递给C++的观察者类来创建代码,但是我听说这不安全。这种类型的实施有最佳做法吗?
我有用C++实现观察者模式的代码。我创建了类似于C++代码的Java JNI代码来注册观察者。当我在Java中注册一个观察者时,它调用一个在C++中创建监听器的方法native
。如何在C++中实现观察者模式,在JNI中调用Java方法
我想用C++中的方法调用来调用已注册的Java观察者中的等效方法。我通过将JNIEnv
传递给C++的观察者类来创建代码,但是我听说这不安全。这种类型的实施有最佳做法吗?
您可以使用每个答案SWIG董事这个问题:How to pass java function pointer to c++ native code
我也建议直接使用痛饮,而不是JNI。