Jaki jest "poprawny" sposób przechowywania natywnego wskaźnika wewnątrz obiektu Java?Jaki jest "poprawny" sposób przechowywania natywnego wskaźnika wewnątrz obiektu Java?
mógłbym potraktować wskaźnik jako Java int
, jeśli zdarzy się, że rodzime wskaźniki są < = 32 bity w rozmiarze lub Java long
jeśli zdarzy się, że rodzime wskaźniki są < = 64 bity w rozmiarze. Ale czy istnieje lepszy lub czystszy sposób na zrobienie tego?
Edit: Wracając rodzimych wskaźnik z funkcji JNI jest dokładnie to, co ja nie chcesz zrobić. Wolałbym zwrócić obiekt Java, który reprezentuje rodzimy zasób. Jednak zwracany obiekt Java musi mieć pole zawierające wskaźnik, który prowadzi mnie z powrotem do pierwotnego pytania.
A może jest jakiś lepszy sposób, aby funkcja JNI zwracała odwołanie do natywnego zasobu?
Ściśle związane z pytaniem http://stackoverflow.com/questions/1632367/passing-pointers-between-c-and-java-through-jni – Raedwald