Bonsoir,
je veux tester l'effet en terme de performance du lock coarsening de la JVM 6, cette optimisation consiste à fusionner deux bloc de synchronisation pour en former un seul ce qui réduit les cout de libération et l'acquisition du verrou.
j'ai utiliser se morceau de code pour faire le test ( fait partie d'une application web sur laquel un test de charge sera effectuer)
cette exemple montre un cas d'application trés simple de cette optimisation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 userProp = new Vector<String>(); synchronized(userProp) { userProp.add(userId); userProp.add(user.getFullName()); }; userProp.add(user.getFirstName()); synchronized(userProp) { userProp.add(user.getEmailAddress()); userProp.add(user.getJobTitle()); }
mais lors de l'exécution j'aurai une exception Null Pointer exception et lorsque je supprime les bloc de synchronized que j'ai ajouter tous fonctionne.
Est ce que quelqu'un peut m'expliquer ceci.
Merci d'avance
Partager