ReentrantLock();
От: Аноним  
Дата: 03.06.07 15:46
Оценка:
Скажите, пожалуйста,чем ReentrantLock отличается от Lock.
Re: ReentrantLock();
От: C0s Россия  
Дата: 03.06.07 15:53
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Скажите, пожалуйста,чем ReentrantLock отличается от Lock.


Lock — интерфейс
ReentrantLock — одна из его реализаций
Re[2]: ReentrantLock();
От: Аноним  
Дата: 03.06.07 16:18
Оценка:
Здравствуйте, C0s, Вы писали:


C0s>Lock — интерфейс

C0s>ReentrantLock — одна из его реализаций
Подскажите, пожалуйста, какие еще есть реализации у Lock
Re[3]: ReentrantLock();
От: C0s Россия  
Дата: 03.06.07 22:21
Оценка: 3 (1)
Здравствуйте, Аноним, Вы писали:

А>Подскажите, пожалуйста, какие еще есть реализации у Lock


глядя прямо в пакет java.util.concurrent.locks.*, вижу только одну, уже упомянутую реализацию
существуют ли другие — не знаю, но думаю, что другие не особенно-то и нужны

ReentrantLock же по своей природе — это "как бы" обычный synchronized, только реализованный в виде класса, предоставляющего дополнительные фичи
Re[4]: ReentrantLock();
От: Аноним  
Дата: 04.06.07 06:43
Оценка:
Здравствуйте, C0s, Вы писали:


C0s>глядя прямо в пакет java.util.concurrent.locks.*, вижу только одну, уже упомянутую реализацию

C0s>существуют ли другие — не знаю, но думаю, что другие не особенно-то и нужны

C0s>ReentrantLock же по своей природе — это "как бы" обычный synchronized, только реализованный в виде класса, предоставляющего дополнительные фичи


Спасибо!
Re[4]: ReentrantLock();
От: Lucker Беларусь http://lucker.intervelopers.com/
Дата: 04.06.07 08:14
Оценка: 2 (2)
Здравствуйте, C0s, Вы писали:

C0s>глядя прямо в пакет java.util.concurrent.locks.*, вижу только одну, уже упомянутую реализацию

C0s>существуют ли другие — не знаю, но думаю, что другие не особенно-то и нужны
суть имени "reentrant" идет от reenter, т.е. этот лок позволяет потоку, уже захватившему лок, захватывать его еще сколько угодно раз. Существует (в природе, в java не встречал) соответственно и не-reentrant локи, которые блочатся при попытке их захвата из одного и того же потока несколько раз, что приводит к дедлокам.
Blog
Re[3]: ReentrantLock();
От: joybell0  
Дата: 07.06.07 17:25
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Здравствуйте, C0s, Вы писали:



C0s>>Lock — интерфейс

C0s>>ReentrantLock — одна из его реализаций
А>Подскажите, пожалуйста, какие еще есть реализации у Lock

ReentrantReadWriteLock.ReadLock и ReentrantReadWriteLock.WriteLock
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: ReentrantLock();
От: C0s Россия  
Дата: 07.06.07 17:31
Оценка:
Здравствуйте, joybell0, Вы писали:

J>ReentrantReadWriteLock.ReadLock и ReentrantReadWriteLock.WriteLock


а есть какой-то смысл использовать эти классы отдельно, вне контекста ReentrantReadWriteLock?
Re[5]: ReentrantLock();
От: joybell0  
Дата: 07.06.07 17:50
Оценка:
Здравствуйте, C0s, Вы писали:

C0s>Здравствуйте, joybell0, Вы писали:


J>>ReentrantReadWriteLock.ReadLock и ReentrantReadWriteLock.WriteLock


C0s>а есть какой-то смысл использовать эти классы отдельно, вне контекста ReentrantReadWriteLock?


Неа Боюсь, нет не только смысла, но и возможности, т.к. в в их конструкторы (которые к тому же защищенные) надо передавать объект ReentrantReadWriteLock.

Просто человек спросил, а я честно ответил
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.