Вопросы с тегом «synchronized»

16
Что означает «синхронизированный»?
У меня есть несколько вопросов относительно использования и значимости synchronizedключевого слова. Каково значение synchronizedключевого слова? Когда должны быть методы synchronized? Что это означает программно и логически?


22
Избегать синхронизации (это) в Java?
Всякий раз, когда в SO возникает вопрос о синхронизации Java, некоторые люди очень хотят указать, чего synchronized(this)следует избегать. Вместо этого, они утверждают, что блокировка частной ссылки должна быть предпочтительной. Некоторые из приведенных причин: какой-то злой код может украсть вашу блокировку (очень популярный, также имеет «случайно» вариант) все синхронизированные методы в …

4
Разница между изменчивым и синхронизированным в Java
Меня интересует разница между объявлением переменной как volatile и всегда доступ к переменной в synchronized(this)блоке в Java? По этой статье http://www.javamex.com/tutorials/synchronization_volatile.shtml многое можно сказать и есть много различий, но также есть и некоторые сходства. Я особенно заинтересован в этой части информации: ... доступ к энергозависимой переменной никогда не может блокировать: …

2
По какой причине синхронизация не допускается в интерфейсных методах Java 8?
В Java 8 я могу легко написать: interface Interface1 { default void method1() { synchronized (this) { // Something } } static void method2() { synchronized (Interface1.class) { // Something } } } Я получу полную семантику синхронизации, которую я могу использовать и в классах. Однако я не могу использовать …

11
Java синхронизирует метод блокировки объекта или метода?
Если у меня есть 2 синхронизированных метода в одном и том же классе, но каждый имеет доступ к разным переменным, могут ли 2 потока получить доступ к этим двум методам одновременно? Происходит ли блокировка объекта или он становится таким же специфичным, как переменные внутри синхронизированного метода? Пример: class X { …

12
Если я синхронизировал два метода в одном классе, могут ли они работать одновременно?
Если я синхронизировал два метода в одном и том же классе, могут ли они одновременно работать на одном и том же объекте ? например: class A { public synchronized void methodA() { //method A } public synchronized void methodB() { // method B } } Я знаю, что не могу …

8
Синхронизированные статические методы Java: блокировка объекта или класса
Документация Java гласит: Невозможно чередовать два вызова синхронизированных методов для одного и того же объекта. Что это значит для статического метода? Поскольку статический метод не имеет связанного объекта, будет ли синхронизированное ключевое слово блокироваться на классе, а не на объекте?


8
Синхронизация незавершенного поля
Предупреждение отображается каждый раз, когда я синхронизирую неокончательное поле класса. Вот код: public class X { private Object o; public void setO(Object o) { this.o = o; } public void x() { synchronized (o) // synchronization on a non-final field { } } } поэтому я изменил кодировку следующим образом: …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.