2011-08-17 35 views
0

在Java中我创建了一些线程,它们调用相同的本机方法,如:我可以创建仅由JNI中的每个线程使用的对象吗?

public native String go(String str);

在C语言中,我必须为每个线程创建一个对象,并且该对象仅由每个线程使用。

全局引用无法使用,因为它由所有线程共享。

我不想在每次调用JNI方法时创建对象。

我该如何执行此操作?

+0

是否有可能从java传递对象而不是在JNI中创建它? – jogabonito 2011-08-17 11:27:08

回答

1

所以你想在JNI方面的线程本地Java对象?只需创建一个ThreadLocal并将其存储在全局参考中。

相关问题