[JNI] Appel d'une fonction native limité
Bonjour à tous,
Je viens vous demander un petit coup de main car je ne comprends pas d'où vient mon problème.
Je remplis un tableau double [200][100] par colonne et aux alentours de la colonne 20 soit après 4000 éléments, le remplissage s'arrête et j'ai des 0.0000 à la place :/
Merci de m'éclairer sur ce problème !!! (mémoire ???)
Edit : J'utilise NetBeans 6.9
Un morceau de code + un semblant de réponse
Je remplis mon tableau comme ceci :
Code:
1 2 3 4 5 6 7 8
| double [][] mat = new double [200][100];
for(int i=0;i<200;i++)
{
for(int j =0;j<100;j++)
{
mat[i][j]=maclassenative.valeur(i,j);
}
} |
J'utilise un encapsuleur JNI (écrit en C++) pour toutes les fonctions dans ma classe maclassenative. Il semblerait que le problème vienne de là car lorsque je remplace la ligne
Code:
mat[i][j]=maclassenative.valeur(i,j);
par
ma matrice se remplit de manière correcte jusqu'au bout.
Je pense que le problème vient de là, mais je ne comprends pas ce qui peut générer cette limite d'écriture dans mon tableau :/
[JNI] Appel d'une fonction native limité
Quelqu'un a une idée d'où pourrait venir le problème ?
Edit : En particulier comment faire pour que les objets crées par JNI soient collectés par le ramasse-miettes GC de Java ?