O'Reilly logo

Java 9 Concurrency Cookbook - Second Edition by Javier Fernández González

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

How to do it...

Follow these steps to implement the example:

  1. Create a class named Task that extends the Runnable interface:
        public class Task implements Runnable {
  1. Declare a private ReentrantLock attribute named lock:
        private ReentrantLock lock;
  1. Implement a constructor of the class:
        public Task(ReentrantLock lock) {           this.lock=lock;         }
  1. Implement the run() method. Get control of the lock, put the thread to sleep for 2 seconds, and free the lock:
        @Override         public void run() {           lock.lock();           try {             TimeUnit.SECONDS.sleep(1);             lock.unlock();           } catch (InterruptedException e) {             e.printStackTrace();           }         }
  1. Create the main class of the example by creating a class named Main with a main() method:
        public class Main {  public static ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required