From a94e1adc68ade16e8ea14abb7d1ffad161002fd4 Mon Sep 17 00:00:00 2001 From: Karsten Jeppesen Date: Mon, 26 Feb 2024 11:33:31 +0100 Subject: [PATCH 1/2] SemaphoreDemo: Added comments --- Technology/SemaphoreDemo/src/SemaphoreDemo.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Technology/SemaphoreDemo/src/SemaphoreDemo.java b/Technology/SemaphoreDemo/src/SemaphoreDemo.java index 3712c44..7d4cc7c 100644 --- a/Technology/SemaphoreDemo/src/SemaphoreDemo.java +++ b/Technology/SemaphoreDemo/src/SemaphoreDemo.java @@ -2,6 +2,10 @@ // // java application to demonstrate // use of semaphores (Locks) +// +// The Semaphore constructor takes one argument: The number of permits! +// Every acquire granted will decrease the number of available permits by 1. +// Every release of an acquired semaphore will increase the number of permits. import java.util.concurrent.*; @@ -12,9 +16,9 @@ public class SemaphoreDemo public static void main(String args[]) throws InterruptedException { // creating a Semaphore object - // A 1 means that you are allowed 1 write to start with + // Granting 1 permit: You may write one object to the buffer Semaphore semPro = new Semaphore(1); - // A 0 means that you are not allowed to read (as nobody has yet written to the buffer) + // Granting 0 permits: Thou shallt not read what hasn't yet been written! (as nobody has yet written to the buffer) Semaphore semCon = new Semaphore(0); // creating two threads named "Producer" and "Consumer" From 661c10c2b193ec4c8583181366431750b7228c45 Mon Sep 17 00:00:00 2001 From: Karsten Jeppesen Date: Wed, 3 Apr 2024 07:23:32 +0200 Subject: [PATCH 2/2] IO: Uniform report syntax --- Technology/ClassicIoBuffered/src/ClassicIoBuffered.java | 2 +- Technology/ClassicIoManBuffered/src/ClassicIoManBuffered.java | 2 +- Technology/ClassicIoUnbuffered/src/ClassicIoUnbuffered.java | 2 +- Technology/ClassicIoWholeFile/src/ClassicIoWholeFile.java | 2 +- Technology/NioLineCount/src/NioLineCount.java | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Technology/ClassicIoBuffered/src/ClassicIoBuffered.java b/Technology/ClassicIoBuffered/src/ClassicIoBuffered.java index 2937fe0..5b35300 100644 --- a/Technology/ClassicIoBuffered/src/ClassicIoBuffered.java +++ b/Technology/ClassicIoBuffered/src/ClassicIoBuffered.java @@ -48,7 +48,7 @@ public class ClassicIoBuffered { int lines = lineCount("input.txt", true); long stopTime = System.nanoTime(); System.out.println("Lines: " + String.valueOf(lines)); - System.out.println("Time it took: " + (stopTime - startTime - dryRun) + " "); + System.out.println("Time to complete: " + (stopTime - startTime - dryRun) + " " + dryRun); } } diff --git a/Technology/ClassicIoManBuffered/src/ClassicIoManBuffered.java b/Technology/ClassicIoManBuffered/src/ClassicIoManBuffered.java index 3d98c9a..8b5dbae 100644 --- a/Technology/ClassicIoManBuffered/src/ClassicIoManBuffered.java +++ b/Technology/ClassicIoManBuffered/src/ClassicIoManBuffered.java @@ -43,7 +43,7 @@ public class ClassicIoManBuffered { int lines = lineCount("input.txt", true); long stopTime = System.nanoTime(); System.out.println("Lines: " + String.valueOf(lines)); - System.out.println("Time it took: " + (stopTime - startTime - dryRun) + " "); + System.out.println("Time to complete: " + (stopTime - startTime - dryRun) + " " + dryRun); } } diff --git a/Technology/ClassicIoUnbuffered/src/ClassicIoUnbuffered.java b/Technology/ClassicIoUnbuffered/src/ClassicIoUnbuffered.java index dc1396d..470babd 100644 --- a/Technology/ClassicIoUnbuffered/src/ClassicIoUnbuffered.java +++ b/Technology/ClassicIoUnbuffered/src/ClassicIoUnbuffered.java @@ -40,7 +40,7 @@ public class ClassicIoUnbuffered { int lines = lineCount("input.txt", true); long stopTime = System.nanoTime(); System.out.println("Lines: " + String.valueOf(lines)); - System.out.println("Time it took: " + (stopTime - startTime - dryRun) + " " + dryRun); + System.out.println("Time to complete: " + (stopTime - startTime - dryRun) + " " + dryRun); } } diff --git a/Technology/ClassicIoWholeFile/src/ClassicIoWholeFile.java b/Technology/ClassicIoWholeFile/src/ClassicIoWholeFile.java index 6e780b1..0f90b78 100644 --- a/Technology/ClassicIoWholeFile/src/ClassicIoWholeFile.java +++ b/Technology/ClassicIoWholeFile/src/ClassicIoWholeFile.java @@ -46,7 +46,7 @@ public class ClassicIoWholeFile { int lines = lineCount("input.txt", true); long stopTime = System.nanoTime(); System.out.println("Lines: " + String.valueOf(lines)); - System.out.println("Time it took: " + (stopTime - startTime - dryRun) + " "); + System.out.println("Time to complete: " + (stopTime - startTime - dryRun) + " " + dryRun); } } diff --git a/Technology/NioLineCount/src/NioLineCount.java b/Technology/NioLineCount/src/NioLineCount.java index e804ad2..e3d8d9a 100644 --- a/Technology/NioLineCount/src/NioLineCount.java +++ b/Technology/NioLineCount/src/NioLineCount.java @@ -87,7 +87,7 @@ public class NioLineCount { int lines = lineCount("input.txt", true); long stopTime = System.nanoTime(); System.out.println("Lines: " + String.valueOf(lines)); - System.out.println("Time it took: " + (stopTime - startTime - dryRun) + " " + dryRun); + System.out.println("Time to complete: " + (stopTime - startTime - dryRun) + " " + dryRun); } }