Widzę, że powyższe adnotacje są szeroko używane w książce JCIP. Myślę, że jest to bardzo przydatne, ponieważ nawet w przypadku braku odpowiedniej dokumentacji mówi kilka rzeczy o polityce synchronizacji. Widzę też, że z tych adnotacji korzysta Intellij Idea. Czy są one obecnie częścią samego języka Java?@GuardedBy, @ThreadSafe, @ NotThreadSafe
Odpowiedz
Są to niestandardowe adnotacje, które nie są częścią standardowego JDK. Aby móc z nich korzystać w swoim kodzie, musisz dodać zależność.
Na jcip.net, tam jest link do biblioteki i jej źródła w dolnej części strony „adnotacji współbieżności: słoik, javadoc, źródło”.
Bezpośrednie linki:
Zostały one ustandaryzowane w JSR-305 (com.google.code.findbugs: jsr305: 2.0.0) –
Status projektu jest uśpiony. Czy wiesz, czy jest jakaś szansa, że pojawi się na pewnym etapie? – assylias
Mogą być powiązane w JSR-308, który jest nadal aktywny. Adnotacje jsr305 były przeznaczone wyłącznie do dokumentacji, więc oferują wartość, nawet jeśli jsr jest uśpiony. –
- 1. Python threadsafe object cache
- 2. Adnotacja nazywa THREADSAFE
- 3. Kolekcja Threadsafe bez blokady
- 4. Czy modyfikuje zmienną klasy w python threadsafe?
- 5. Threadsafe Singleton bez synchronizacji w Javie?
- 6. Czy random_shuffle threadsafe? i używanie rand_r jeśli nie jest
- 7. Czy istnieje kolekcja Observable Threadsafe w .NET 4?
- 8. Dodanie do listy w pętli Parallel.ForEach w THREADSAFE sposób
- 9. Czy mogę użyć Collection.size(), aby zastąpić licznik w tym kodzie?
- 10. Aktorzy (scala/akka): czy zakłada się, że metoda odbioru będzie dostępna w sposób bezpieczny dla wątków?
- 11. Jak kodować za pomocą JCIP (Java Concurrency in Practice)
- 12. Wiosna: @PersistenceContext i @Autowired bezpieczeństwo wątku?
- 13. Czy ciąg odbierania/ustawiania wątków jest bezpieczny?
- 14. pobierania danych z AppEngine
- 15. potrzebna, aby uzyskać aktualny timestamp w Javie
- 16. Jak sprawić, aby cron działał z określonym modułem silnika aplikacji?
- 17. Czy standardowe strumienie wyjściowe są wątkowe w C++ (cout, cerr, clog)?
- 18. Synchronizacja na "odniesienie" lub na przykład
- 19. Prawidłowa synchronizacja równań() w języku Java
- 20. Czy bezpieczne jest dla wielu wątków ustawienie ServicePointManager.ServerCertificateValidationCallback?
- 21. GAE nie widzę gunicorn, ale jest już zainstalowany
- 22. jak używać std :: atomowej <>
- 23. Gradle - wyjątek DexException: wiele plików dex definiuje
- 24. ThreadPool.QueueUserWorkItem z wyrażenia lambda i metody anonimowej
- 25. wartości mapowania nie są akceptowane tutaj ... w foo.py
- 26. Czy loop.run_in_executor asyncio jest bezpieczny dla wątków?
- 27. jak się dowiedzieć, co NIE jest bezpieczne w wątku w ruby?
- 28. Wyjątek NullPointerException w Lucene-Appengine's SegmentIndexInput metoda readByte
- 29. Moduły Python App Engine i usługa kanału
- 30. Równoległość z SciPy.optimize
Nie, nie jest częścią standardowego JDK - trzeba importować zależność. – assylias
@assylias która zależność? – Inquisitive
Na stronie [jcip.net] (http://jcip.net) link do słoika w "Adnotacjach do współbieżności: jar, javadoc, source" u dołu strony. – assylias