Java :ReentrantReadWriteLock с приоритетом

Ниже приведен типичный шаблон чтения и записи (много операций чтения и мало операций записи)

  private ReadWriteLock lock = new ReentrantReadWriteLock();
  private int value;

  public void writeValue(int newValue){
       lock.writeLock().lock();
       try{
           this.value = newValue;
       }
       finally{
           lock.writeLock().unlock();
       }
  }

  public int readValue(){
       lock.readLock().lock();
       try{
           return value;
       }
       finally{
           lock.writeLock().unlock();
       }
  }

Мне интересно, возможно ли иметь приоритет для писателя и читателя? Например, обычно модуль записи может ждать очень долго (, может быть, вечность ), если есть постоянные блокировки чтения, удерживаемые другим потоком, поэтому возможно ли иметь модуль записи с более высоким приоритетом, поэтому всякий раз, когда появляется модуль записи, его можно рассматривать так как это имеет высокий приоритет (пропустить строку )что-то в этом роде.

6
задан peter 12 August 2012 в 19:00
поделиться