import java.io.File; import java.io.FileNotFoundException; import java.util.Scanner; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class MyTask implements Runnable{ private final Lock lock = new ReentrantLock(); private final int MAX_COUNT = 10000; private int sharedCounter = 0; @Override public void run() { System.out.println("Starting! Shared counter = " + sharedCounter); for (int i = 0; i < MAX_COUNT; i++) { lock.lock(); try { sharedCounter = sharedCounter + 1; Scanner sc = new Scanner( new File("eksempelpath.txt")); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); System.exit(-1); } finally { lock.unlock(); } } System.out.println("Done! Shared counter = " + sharedCounter); } }