Istnieją tutaj dwa różne pojęcia.
- szybkiej ścieżki i kod
- Uncontended i utrzymywał synchronizacji
zwolnionym ścieżka vs kodu szybkiej ścieżki zwolnionym ścieżka
Jest inny sposób, w celu identyfikacji producenta specyficzny dla komputera kod binarny.
Z HotSpot VM kod wolno ścieżka jest kod binarny produkowane przez C++ wdrażania, gdzie kod szybkiej ścieżki oznacza kod produkowanego przez kompilator JIT.
W sensie ogólnym kod szybkiej ścieżki jest o wiele bardziej zoptymalizowany. Aby w pełni zrozumieć kompilatory JIT wikipedia is a good place to start.
Uncontended i utrzymywał synchronizacja
synchronizacja konstrukt Java (Monitors) mają pojęcia własności. Kiedy wątek próbuje zablokować (uzyskać prawo własności) monitora, może zostać zablokowany (posiadany przez inny wątek) lub odblokowany.
Uncontended synchronizacja przebiega w dwóch różnych scenariuszy:
- Unlocked Monitor (własność zyskał cieśnina away)
- monitor już w posiadaniu tego samego wątku
utrzymywał synchronizacji, z drugiej strony, oznacza, że wątek zostanie zablokowany, dopóki wątek właściciela nie zwolni blokady monitora.
Odpowiadając na pytanie
Przez szybkiej ścieżki uncontended synchronizacji te środki autorem, najszybszy tłumaczenie kodu bajtowego (fast-path) w najtańszym scenariusza (uncontended synchronizacji).
Czy zrobiłeś jakieś wyszukiwania w Google. To mi się podobało: https://blogs.oracle.com/dagastine/entry/java_synchronization_optimizations_in_mustang – Gray