用JNI实现java调用c++的dll,java传对象给c++,c++收到后用socket发给server,c++的另一个线程监听,收到server的responese,调用java的方法,传对象给java。
问题是c++的监听线程如何调用java的方法,因为看JNI的资料说,JNIEnv不能在c++的线程间共享,那么c++的监听线程如何得到正确的JNIEnv
问题是c++的监听线程如何调用java的方法,因为看JNI的资料说,JNIEnv不能在c++的线程间共享,那么c++的监听线程如何得到正确的JNIEnv
[email protected]
顺便把分都给我算了:) 嘿嘿~~
(JNIEnv *env, jclass clazz,jobject client, jobject request){
send(request);
}
sendRes(cRes){
将new一个java的response对象,将cRes的信息设置到response中,调用client的receive (response)
问题是new response对象时需要JNIEnv ,因为这个方法是c++的另一个线程调用,所以上面方法中的JNIEnv 不能在这里用,关键是怎么得到正确的JNIEnv
}
client,request是java传给c++的对象,client有receive(response)接收response对象
你还是发我代码吧,要不我很难测试。