diff --git a/.classpath b/.classpath
new file mode 100644
index 0000000..f7e4a1d
--- /dev/null
+++ b/.classpath
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..b83d222
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/target/
diff --git a/.project b/.project
new file mode 100644
index 0000000..d8107d3
--- /dev/null
+++ b/.project
@@ -0,0 +1,23 @@
+
+
+ PP-Labs_WS-2024-2025
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+ org.eclipse.m2e.core.maven2Nature
+
+
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..2f5cc74
--- /dev/null
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/bin/.gitignore b/bin/.gitignore
new file mode 100644
index 0000000..b83d222
--- /dev/null
+++ b/bin/.gitignore
@@ -0,0 +1 @@
+/target/
diff --git a/bin/.project b/bin/.project
new file mode 100644
index 0000000..d8107d3
--- /dev/null
+++ b/bin/.project
@@ -0,0 +1,23 @@
+
+
+ PP-Labs_WS-2024-2025
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+ org.eclipse.m2e.core.maven2Nature
+
+
diff --git a/bin/.settings/org.eclipse.m2e.core.prefs b/bin/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/bin/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/bin/README.md b/bin/README.md
new file mode 100644
index 0000000..185c331
--- /dev/null
+++ b/bin/README.md
@@ -0,0 +1,8 @@
+# Parallele Programmierung (3IB)
+
+## Laborübungsaufgaben
+- [Aufgabenstellungen mit Musterlösungen](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/)
+
+## Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/)
diff --git a/bin/eigenes/philosopher2/Philosopher.class b/bin/eigenes/philosopher2/Philosopher.class
new file mode 100644
index 0000000..b30afe8
Binary files /dev/null and b/bin/eigenes/philosopher2/Philosopher.class differ
diff --git a/bin/eigenes/philosopher3/Philosopher.class b/bin/eigenes/philosopher3/Philosopher.class
new file mode 100644
index 0000000..86db3e7
Binary files /dev/null and b/bin/eigenes/philosopher3/Philosopher.class differ
diff --git a/bin/meins/src/Arbitrator.class b/bin/meins/src/Arbitrator.class
new file mode 100644
index 0000000..17dbd19
Binary files /dev/null and b/bin/meins/src/Arbitrator.class differ
diff --git a/bin/meins/src/Chopstick.class b/bin/meins/src/Chopstick.class
new file mode 100644
index 0000000..1234927
Binary files /dev/null and b/bin/meins/src/Chopstick.class differ
diff --git a/bin/meins/src/EinThreadStarten.class b/bin/meins/src/EinThreadStarten.class
new file mode 100644
index 0000000..2d6ba67
Binary files /dev/null and b/bin/meins/src/EinThreadStarten.class differ
diff --git a/bin/meins/src/Philosopher.class b/bin/meins/src/Philosopher.class
new file mode 100644
index 0000000..444ef91
Binary files /dev/null and b/bin/meins/src/Philosopher.class differ
diff --git a/bin/meins/src/ThreadAuslesen.class b/bin/meins/src/ThreadAuslesen.class
new file mode 100644
index 0000000..a75b1ec
Binary files /dev/null and b/bin/meins/src/ThreadAuslesen.class differ
diff --git a/bin/pom.xml b/bin/pom.xml
new file mode 100644
index 0000000..88d3dc7
--- /dev/null
+++ b/bin/pom.xml
@@ -0,0 +1,6 @@
+
+ 4.0.0
+ PP-Labs_WS-2024-2025
+ PP-Labs_WS-2024-2025
+ 0.0.1-SNAPSHOT
+
\ No newline at end of file
diff --git a/bin/src/.gitignore b/bin/src/.gitignore
new file mode 100644
index 0000000..1f3bdcd
--- /dev/null
+++ b/bin/src/.gitignore
@@ -0,0 +1,10 @@
+**/.DS_Store
+**/*.class
+*/bin/
+*/.project
+*/.classpath
+*/.factorypath
+*/.settings/
+*/target/
+*/.apt_generated/
+*/.apt_generated_tests/
diff --git a/bin/src/pp.01.01-Inheritance/README.md b/bin/src/pp.01.01-Inheritance/README.md
new file mode 100644
index 0000000..3b8b668
--- /dev/null
+++ b/bin/src/pp.01.01-Inheritance/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Start eines Threads durch und bei Vererbung"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-01-Inheritence.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-Solutions.html#laboraufgabe-start-eines-threads-durch-und-bei-vererbung)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.01.01-Inheritance/justfile b/bin/src/pp.01.01-Inheritance/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.01.01-Inheritance/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.01.01-Inheritance/pom.xml b/bin/src/pp.01.01-Inheritance/pom.xml
new file mode 100644
index 0000000..dccad59
--- /dev/null
+++ b/bin/src/pp.01.01-Inheritance/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.01.01-Inheritance
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Thermometer
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.01.01-Inheritance_solution/README.md b/bin/src/pp.01.01-Inheritance_solution/README.md
new file mode 100644
index 0000000..3b8b668
--- /dev/null
+++ b/bin/src/pp.01.01-Inheritance_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Start eines Threads durch und bei Vererbung"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-01-Inheritence.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-Solutions.html#laboraufgabe-start-eines-threads-durch-und-bei-vererbung)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.01.01-Inheritance_solution/justfile b/bin/src/pp.01.01-Inheritance_solution/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.01.01-Inheritance_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.01.01-Inheritance_solution/pom.xml b/bin/src/pp.01.01-Inheritance_solution/pom.xml
new file mode 100644
index 0000000..831eba3
--- /dev/null
+++ b/bin/src/pp.01.01-Inheritance_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.01.01-Inheritance_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Thermometer
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.01.02-Runnable/README.md b/bin/src/pp.01.02-Runnable/README.md
new file mode 100644
index 0000000..cb94908
--- /dev/null
+++ b/bin/src/pp.01.02-Runnable/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Start eines Threads als ``Runnable`` und Refactoring"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-02-Runnable.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-Solutions.html#laboraufgabe-start-eines-threads-als-runnable-und-refactoring)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.01.02-Runnable/justfile b/bin/src/pp.01.02-Runnable/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.01.02-Runnable/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.01.02-Runnable/pom.xml b/bin/src/pp.01.02-Runnable/pom.xml
new file mode 100644
index 0000000..1ec22f6
--- /dev/null
+++ b/bin/src/pp.01.02-Runnable/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.01.02-Runnable
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Starter
+ 19
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.01.02-Runnable_solution/README.md b/bin/src/pp.01.02-Runnable_solution/README.md
new file mode 100644
index 0000000..cb94908
--- /dev/null
+++ b/bin/src/pp.01.02-Runnable_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Start eines Threads als ``Runnable`` und Refactoring"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-02-Runnable.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-Solutions.html#laboraufgabe-start-eines-threads-als-runnable-und-refactoring)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.01.02-Runnable_solution/justfile b/bin/src/pp.01.02-Runnable_solution/justfile
new file mode 100644
index 0000000..36bfe45
--- /dev/null
+++ b/bin/src/pp.01.02-Runnable_solution/justfile
@@ -0,0 +1,21 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
+
+_exec class: clean compile
+ mvn exec:java -Dexec.mainClass=pp.{{class}}
+Starter:
+ just _exec Starter
+StarterInner:
+ just _exec StarterInner
+StarterLambda:
+ just _exec StarterLambda
diff --git a/bin/src/pp.01.02-Runnable_solution/pom.xml b/bin/src/pp.01.02-Runnable_solution/pom.xml
new file mode 100644
index 0000000..9d71db1
--- /dev/null
+++ b/bin/src/pp.01.02-Runnable_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.01.02-Runnable_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Starter
+ 19
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.01.03-EndThread/README.md b/bin/src/pp.01.03-EndThread/README.md
new file mode 100644
index 0000000..0ab65ac
--- /dev/null
+++ b/bin/src/pp.01.03-EndThread/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Lebenszyklus von Threads und Interrupts"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-03-EndThread.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-Solutions.html#laboraufgabe-lebenszyklus-von-threads-und-interrupts)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.01.03-EndThread/justfile b/bin/src/pp.01.03-EndThread/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.01.03-EndThread/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.01.03-EndThread/pom.xml b/bin/src/pp.01.03-EndThread/pom.xml
new file mode 100644
index 0000000..5ec939f
--- /dev/null
+++ b/bin/src/pp.01.03-EndThread/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.01.03-EndThread
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Runner
+ 19
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.01.03-EndThread_solution/README.md b/bin/src/pp.01.03-EndThread_solution/README.md
new file mode 100644
index 0000000..0ab65ac
--- /dev/null
+++ b/bin/src/pp.01.03-EndThread_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Lebenszyklus von Threads und Interrupts"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-03-EndThread.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/01-Solutions.html#laboraufgabe-lebenszyklus-von-threads-und-interrupts)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.01.03-EndThread_solution/justfile b/bin/src/pp.01.03-EndThread_solution/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.01.03-EndThread_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.01.03-EndThread_solution/pom.xml b/bin/src/pp.01.03-EndThread_solution/pom.xml
new file mode 100644
index 0000000..3938817
--- /dev/null
+++ b/bin/src/pp.01.03-EndThread_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.01.03-EndThread_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Runner
+ 19
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.02.01-MemoryBarrier/README.md b/bin/src/pp.02.01-MemoryBarrier/README.md
new file mode 100644
index 0000000..db7f17b
--- /dev/null
+++ b/bin/src/pp.02.01-MemoryBarrier/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Anwendung von Memory Barrieren"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-01-MemoryBarrier.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-Solutions.html#laboraufgabe-anwendung-von-memory-barrieren)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.02.01-MemoryBarrier/justfile b/bin/src/pp.02.01-MemoryBarrier/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.02.01-MemoryBarrier/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.02.01-MemoryBarrier/pom.xml b/bin/src/pp.02.01-MemoryBarrier/pom.xml
new file mode 100644
index 0000000..90602ab
--- /dev/null
+++ b/bin/src/pp.02.01-MemoryBarrier/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.02.01-MemoryBarrier
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.MemoryBarrierTest
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.02.01-MemoryBarrier_solution/README.md b/bin/src/pp.02.01-MemoryBarrier_solution/README.md
new file mode 100644
index 0000000..db7f17b
--- /dev/null
+++ b/bin/src/pp.02.01-MemoryBarrier_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Anwendung von Memory Barrieren"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-01-MemoryBarrier.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-Solutions.html#laboraufgabe-anwendung-von-memory-barrieren)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.02.01-MemoryBarrier_solution/justfile b/bin/src/pp.02.01-MemoryBarrier_solution/justfile
new file mode 100644
index 0000000..355c2fb
--- /dev/null
+++ b/bin/src/pp.02.01-MemoryBarrier_solution/justfile
@@ -0,0 +1,25 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
+
+_exec class: clean compile
+ mvn exec:java -Dexec.mainClass="pp.{{class}}" -Dexec.args=""
+MemoryBarrierTest1:
+ just _exec MemoryBarrierTest1
+MemoryBarrierTest1b:
+ just _exec MemoryBarrierTest1b
+MemoryBarrierTest2:
+ just _exec MemoryBarrierTest2
+MemoryBarrierTest5:
+ just _exec MemoryBarrierTest5
+MemoryBarrierTest6:
+ just _exec MemoryBarrierTest6
diff --git a/bin/src/pp.02.01-MemoryBarrier_solution/pom.xml b/bin/src/pp.02.01-MemoryBarrier_solution/pom.xml
new file mode 100644
index 0000000..d3d6fd6
--- /dev/null
+++ b/bin/src/pp.02.01-MemoryBarrier_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.02.01-MemoryBarrier_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.MemoryBarrierTest1
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.02.02-ThreadLocal/README.md b/bin/src/pp.02.02-ThreadLocal/README.md
new file mode 100644
index 0000000..d74df3c
--- /dev/null
+++ b/bin/src/pp.02.02-ThreadLocal/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "threadlokaler Speicher"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-02-ThreadLocal.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-Solutions.html#laboraufgabe-threadlokaler-speicher)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.02.02-ThreadLocal/justfile b/bin/src/pp.02.02-ThreadLocal/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.02.02-ThreadLocal/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.02.02-ThreadLocal/pom.xml b/bin/src/pp.02.02-ThreadLocal/pom.xml
new file mode 100644
index 0000000..daf79da
--- /dev/null
+++ b/bin/src/pp.02.02-ThreadLocal/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.02.02-ThreadLocal
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.MyThreadLocalRandom
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.02.02-ThreadLocal_solution/README.md b/bin/src/pp.02.02-ThreadLocal_solution/README.md
new file mode 100644
index 0000000..d74df3c
--- /dev/null
+++ b/bin/src/pp.02.02-ThreadLocal_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "threadlokaler Speicher"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-02-ThreadLocal.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-Solutions.html#laboraufgabe-threadlokaler-speicher)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.02.02-ThreadLocal_solution/justfile b/bin/src/pp.02.02-ThreadLocal_solution/justfile
new file mode 100644
index 0000000..b74f728
--- /dev/null
+++ b/bin/src/pp.02.02-ThreadLocal_solution/justfile
@@ -0,0 +1,25 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
+
+_exec class: clean compile
+ mvn exec:java -Dexec.mainClass="pp.{{class}}" -Dexec.args=""
+MyThreadLocalRandom0:
+ just _exec MyThreadLocalRandom0
+MyThreadLocalRandom1:
+ just _exec MyThreadLocalRandom1
+MyThreadLocalRandom2:
+ just _exec MyThreadLocalRandom2
+MyThreadLocalRandom3:
+ just _exec MyThreadLocalRandom3
+MyThreadLocalRandom4:
+ just _exec MyThreadLocalRandom4
diff --git a/bin/src/pp.02.02-ThreadLocal_solution/pom.xml b/bin/src/pp.02.02-ThreadLocal_solution/pom.xml
new file mode 100644
index 0000000..2d598eb
--- /dev/null
+++ b/bin/src/pp.02.02-ThreadLocal_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.02.02-ThreadLocal_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.MyThreadLocalRandom0
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.02.03-Lock/README.md b/bin/src/pp.02.03-Lock/README.md
new file mode 100644
index 0000000..330a8b6
--- /dev/null
+++ b/bin/src/pp.02.03-Lock/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "gegenseitiger Ausschluss"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-03-Lock.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-Solutions.html#laboraufgabe-gegenseitiger-ausschluss)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.02.03-Lock/justfile b/bin/src/pp.02.03-Lock/justfile
new file mode 100644
index 0000000..870c391
--- /dev/null
+++ b/bin/src/pp.02.03-Lock/justfile
@@ -0,0 +1,17 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
+
+_exec factory: clean compile
+ mvn exec:java -Dexec.mainClass="pp.{{factory}}" -Dexec.args=""
+Factory:
+ just _exec Factory
diff --git a/bin/src/pp.02.03-Lock/pom.xml b/bin/src/pp.02.03-Lock/pom.xml
new file mode 100644
index 0000000..4bdb982
--- /dev/null
+++ b/bin/src/pp.02.03-Lock/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.02.03-Lock
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Factory
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.02.03-Lock_solution/README.md b/bin/src/pp.02.03-Lock_solution/README.md
new file mode 100644
index 0000000..330a8b6
--- /dev/null
+++ b/bin/src/pp.02.03-Lock_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "gegenseitiger Ausschluss"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-03-Lock.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/02-Solutions.html#laboraufgabe-gegenseitiger-ausschluss)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/02-konkurrierenderZugriff.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/02-konkurrierenderZugriff.html)
diff --git a/bin/src/pp.02.03-Lock_solution/justfile b/bin/src/pp.02.03-Lock_solution/justfile
new file mode 100644
index 0000000..6373652
--- /dev/null
+++ b/bin/src/pp.02.03-Lock_solution/justfile
@@ -0,0 +1,25 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
+
+_exec class: clean compile
+ mvn exec:java -Dexec.mainClass="pp.{{class}}" -Dexec.args=""
+Factory0:
+ just _exec Factory0
+Factory1:
+ just _exec Factory1
+Factory2:
+ just _exec Factory2
+Factory3:
+ just _exec Factory3
+Factory4:
+ just _exec Factory4
diff --git a/bin/src/pp.02.03-Lock_solution/pom.xml b/bin/src/pp.02.03-Lock_solution/pom.xml
new file mode 100644
index 0000000..fb124bf
--- /dev/null
+++ b/bin/src/pp.02.03-Lock_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.02.03-Lock_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Factory0
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.03.01-SynchPhilosopher/README.md b/bin/src/pp.03.01-SynchPhilosopher/README.md
new file mode 100644
index 0000000..dc4f6d7
--- /dev/null
+++ b/bin/src/pp.03.01-SynchPhilosopher/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Dinnierende Philosoph:innen"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-01-SynchPhilosopher.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-Solutions.html#laboraufgabe-dinierende-philosophinnen)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/03-steuerung.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/03-steuerung.html)
diff --git a/bin/src/pp.03.01-SynchPhilosopher/justfile b/bin/src/pp.03.01-SynchPhilosopher/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.03.01-SynchPhilosopher/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.03.01-SynchPhilosopher/pom.xml b/bin/src/pp.03.01-SynchPhilosopher/pom.xml
new file mode 100644
index 0000000..6f69d87
--- /dev/null
+++ b/bin/src/pp.03.01-SynchPhilosopher/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.03.01-SynchPhilosopher
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.PhilosopherExperiment
+ 19
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.03.01-SynchPhilosopher_solution/README.md b/bin/src/pp.03.01-SynchPhilosopher_solution/README.md
new file mode 100644
index 0000000..dc4f6d7
--- /dev/null
+++ b/bin/src/pp.03.01-SynchPhilosopher_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Dinnierende Philosoph:innen"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-01-SynchPhilosopher.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-Solutions.html#laboraufgabe-dinierende-philosophinnen)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/03-steuerung.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/03-steuerung.html)
diff --git a/bin/src/pp.03.01-SynchPhilosopher_solution/justfile b/bin/src/pp.03.01-SynchPhilosopher_solution/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.03.01-SynchPhilosopher_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.03.01-SynchPhilosopher_solution/pom.xml b/bin/src/pp.03.01-SynchPhilosopher_solution/pom.xml
new file mode 100644
index 0000000..b4f0c16
--- /dev/null
+++ b/bin/src/pp.03.01-SynchPhilosopher_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.03.01-SynchPhilosopher_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.PhilosopherExperiment
+ 19
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.03.02-BoundedQueueWaitNotify/README.md b/bin/src/pp.03.02-BoundedQueueWaitNotify/README.md
new file mode 100644
index 0000000..12cb5d9
--- /dev/null
+++ b/bin/src/pp.03.02-BoundedQueueWaitNotify/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "``wait``/``notifyAll`` für Ringpuffer"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-02-BoundedQueueWaitNotify.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-Solutions.html#laboraufgabe-waitnotifyall-für-ringpuffer)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/03-steuerung.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/03-steuerung.html)
diff --git a/bin/src/pp.03.02-BoundedQueueWaitNotify/justfile b/bin/src/pp.03.02-BoundedQueueWaitNotify/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.03.02-BoundedQueueWaitNotify/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.03.02-BoundedQueueWaitNotify/pom.xml b/bin/src/pp.03.02-BoundedQueueWaitNotify/pom.xml
new file mode 100644
index 0000000..f20941f
--- /dev/null
+++ b/bin/src/pp.03.02-BoundedQueueWaitNotify/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.03.02-BoundedQueueWaitNotify
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.BoundedBuffer
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/README.md b/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/README.md
new file mode 100644
index 0000000..12cb5d9
--- /dev/null
+++ b/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "``wait``/``notifyAll`` für Ringpuffer"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-02-BoundedQueueWaitNotify.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-Solutions.html#laboraufgabe-waitnotifyall-für-ringpuffer)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/03-steuerung.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/03-steuerung.html)
diff --git a/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/justfile b/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/pom.xml b/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/pom.xml
new file mode 100644
index 0000000..b4580bc
--- /dev/null
+++ b/bin/src/pp.03.02-BoundedQueueWaitNotify_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.03.02-BoundedQueueWaitNotify_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.BoundedBuffer
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.03.03-BoundedQueueAwaitSignal/README.md b/bin/src/pp.03.03-BoundedQueueAwaitSignal/README.md
new file mode 100644
index 0000000..dee18ac
--- /dev/null
+++ b/bin/src/pp.03.03-BoundedQueueAwaitSignal/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "``await``/``signal`` für Ringpuffer”
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-03-BoundedQueueAwaitSignal.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-Solutions.html#laboraufgabe-awaitsignal-für-ringpuffer)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/03-steuerung.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/03-steuerung.html)
diff --git a/bin/src/pp.03.03-BoundedQueueAwaitSignal/justfile b/bin/src/pp.03.03-BoundedQueueAwaitSignal/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.03.03-BoundedQueueAwaitSignal/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.03.03-BoundedQueueAwaitSignal/pom.xml b/bin/src/pp.03.03-BoundedQueueAwaitSignal/pom.xml
new file mode 100644
index 0000000..8030e3b
--- /dev/null
+++ b/bin/src/pp.03.03-BoundedQueueAwaitSignal/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.03.03-BoundedQueueAwaitSignal
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.BoundedBuffer
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/README.md b/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/README.md
new file mode 100644
index 0000000..dee18ac
--- /dev/null
+++ b/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "``await``/``signal`` für Ringpuffer”
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-03-BoundedQueueAwaitSignal.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/03-Solutions.html#laboraufgabe-awaitsignal-für-ringpuffer)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/03-steuerung.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/03-steuerung.html)
diff --git a/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/justfile b/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/pom.xml b/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/pom.xml
new file mode 100644
index 0000000..90093ec
--- /dev/null
+++ b/bin/src/pp.03.03-BoundedQueueAwaitSignal_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.03.03-BoundedQueueAwaitSignal_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.BoundedBuffer
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.04.01-RunnableReturn/README.md b/bin/src/pp.04.01-RunnableReturn/README.md
new file mode 100644
index 0000000..3fa85f7
--- /dev/null
+++ b/bin/src/pp.04.01-RunnableReturn/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Thread für ``Runnable`` mit Rückgabewert"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-01-RunnableWithResult.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-Solutions.html#laboraufgabe-thread-für-runnable-mit-rückgabewert)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/04-threadpools.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/04-threadpools.html)
diff --git a/bin/src/pp.04.01-RunnableReturn/justfile b/bin/src/pp.04.01-RunnableReturn/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.04.01-RunnableReturn/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.04.01-RunnableReturn/pom.xml b/bin/src/pp.04.01-RunnableReturn/pom.xml
new file mode 100644
index 0000000..2a010e3
--- /dev/null
+++ b/bin/src/pp.04.01-RunnableReturn/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.04.01-RunnableReturn
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Main
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.04.01-RunnableReturn_solution/README.md b/bin/src/pp.04.01-RunnableReturn_solution/README.md
new file mode 100644
index 0000000..3fa85f7
--- /dev/null
+++ b/bin/src/pp.04.01-RunnableReturn_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Thread für ``Runnable`` mit Rückgabewert"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-01-RunnableWithResult.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-Solutions.html#laboraufgabe-thread-für-runnable-mit-rückgabewert)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/04-threadpools.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/04-threadpools.html)
diff --git a/bin/src/pp.04.01-RunnableReturn_solution/justfile b/bin/src/pp.04.01-RunnableReturn_solution/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.04.01-RunnableReturn_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.04.01-RunnableReturn_solution/pom.xml b/bin/src/pp.04.01-RunnableReturn_solution/pom.xml
new file mode 100644
index 0000000..267481c
--- /dev/null
+++ b/bin/src/pp.04.01-RunnableReturn_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.04.01-RunnableReturn_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Main
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.04.02-Future/README.md b/bin/src/pp.04.02-Future/README.md
new file mode 100644
index 0000000..bd2c085
--- /dev/null
+++ b/bin/src/pp.04.02-Future/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Asynchrone Ausführung mit ``Callable`` und ``Future``"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-02-Future.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-Solutions.html#laboraufgabe-asynchrone-ausführung-mit-callable-und-future)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/04-threadpools.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/04-threadpools.html)
diff --git a/bin/src/pp.04.02-Future/justfile b/bin/src/pp.04.02-Future/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.04.02-Future/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.04.02-Future/pom.xml b/bin/src/pp.04.02-Future/pom.xml
new file mode 100644
index 0000000..a390e40
--- /dev/null
+++ b/bin/src/pp.04.02-Future/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.04.02-Future
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Main
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.04.02-Future_solution/README.md b/bin/src/pp.04.02-Future_solution/README.md
new file mode 100644
index 0000000..bd2c085
--- /dev/null
+++ b/bin/src/pp.04.02-Future_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Asynchrone Ausführung mit ``Callable`` und ``Future``"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-02-Future.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-Solutions.html#laboraufgabe-asynchrone-ausführung-mit-callable-und-future)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/04-threadpools.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/04-threadpools.html)
diff --git a/bin/src/pp.04.02-Future_solution/justfile b/bin/src/pp.04.02-Future_solution/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.04.02-Future_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.04.02-Future_solution/pom.xml b/bin/src/pp.04.02-Future_solution/pom.xml
new file mode 100644
index 0000000..1839240
--- /dev/null
+++ b/bin/src/pp.04.02-Future_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.04.02-Future_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Main
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.04.03-ThreadPoolSize/README.md b/bin/src/pp.04.03-ThreadPoolSize/README.md
new file mode 100644
index 0000000..3a03d3a
--- /dev/null
+++ b/bin/src/pp.04.03-ThreadPoolSize/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Thread Pools"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-03-ThreadPoolSize.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-Solutions.html#laboraufgabe-thread-pools)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/04-threadpools.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/04-threadpools.html)
diff --git a/bin/src/pp.04.03-ThreadPoolSize/justfile b/bin/src/pp.04.03-ThreadPoolSize/justfile
new file mode 100644
index 0000000..848084f
--- /dev/null
+++ b/bin/src/pp.04.03-ThreadPoolSize/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile exec:java
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.04.03-ThreadPoolSize/pom.xml b/bin/src/pp.04.03-ThreadPoolSize/pom.xml
new file mode 100644
index 0000000..56792dd
--- /dev/null
+++ b/bin/src/pp.04.03-ThreadPoolSize/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.04.03-ThreadPoolSize
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.Task
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.04.03-ThreadPoolSize_solution/README.md b/bin/src/pp.04.03-ThreadPoolSize_solution/README.md
new file mode 100644
index 0000000..3a03d3a
--- /dev/null
+++ b/bin/src/pp.04.03-ThreadPoolSize_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Thread Pools"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-03-ThreadPoolSize.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/04-Solutions.html#laboraufgabe-thread-pools)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/04-threadpools.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/04-threadpools.html)
diff --git a/bin/src/pp.04.03-ThreadPoolSize_solution/justfile b/bin/src/pp.04.03-ThreadPoolSize_solution/justfile
new file mode 100644
index 0000000..edbee11
--- /dev/null
+++ b/bin/src/pp.04.03-ThreadPoolSize_solution/justfile
@@ -0,0 +1,20 @@
+default:
+ mvn clean compile exec:java
+
+innerClass: (_exec "pp.TaskInnerClass" "")
+lambda: (_exec "pp.TaskLambda" "")
+staticClass: (_exec "pp.TaskStaticClass" "")
+
+_exec class args:
+ mvn exec:java -Dexec.mainClass={{class}} -Dexec.args={{args}}
+
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.04.03-ThreadPoolSize_solution/pom.xml b/bin/src/pp.04.03-ThreadPoolSize_solution/pom.xml
new file mode 100644
index 0000000..a89caae
--- /dev/null
+++ b/bin/src/pp.04.03-ThreadPoolSize_solution/pom.xml
@@ -0,0 +1,61 @@
+
+ 4.0.0
+ pp
+ pp.04.03-ThreadPoolSize_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ pp.TaskLambda
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.05.01-CounterAtomic/README.md b/bin/src/pp.05.01-CounterAtomic/README.md
new file mode 100644
index 0000000..ec96a93
--- /dev/null
+++ b/bin/src/pp.05.01-CounterAtomic/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Counter mit Atomics threadsicher machen"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/05-01-CounterAtomic.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/05-Solutions.html#laboraufgabe-counter-mit-atomics-threadsicher-machen)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/05-atomics.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/05-atomics.html)
diff --git a/bin/src/pp.05.01-CounterAtomic/justfile b/bin/src/pp.05.01-CounterAtomic/justfile
new file mode 100644
index 0000000..43d3962
--- /dev/null
+++ b/bin/src/pp.05.01-CounterAtomic/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile test
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.05.01-CounterAtomic/pom.xml b/bin/src/pp.05.01-CounterAtomic/pom.xml
new file mode 100644
index 0000000..29d7273
--- /dev/null
+++ b/bin/src/pp.05.01-CounterAtomic/pom.xml
@@ -0,0 +1,60 @@
+
+ 4.0.0
+ pp
+ pp.05.01-CounterAtomic
+ 1.0-SNAPSHOT
+ jar
+
+
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/bin/src/pp.05.01-CounterAtomic_solution/README.md b/bin/src/pp.05.01-CounterAtomic_solution/README.md
new file mode 100644
index 0000000..ec96a93
--- /dev/null
+++ b/bin/src/pp.05.01-CounterAtomic_solution/README.md
@@ -0,0 +1,7 @@
+# Laboraufgabe "Counter mit Atomics threadsicher machen"
+- [Aufgabenstellung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/05-01-CounterAtomic.html)
+- [Musterlösung](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/labs/05-Solutions.html#laboraufgabe-counter-mit-atomics-threadsicher-machen)
+
+# Materialien
+- [Folien](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/slides/05-atomics.html)
+- [Skript](https://services.informatik.hs-mannheim.de/~s.leuchter/pp/notes/05-atomics.html)
diff --git a/bin/src/pp.05.01-CounterAtomic_solution/justfile b/bin/src/pp.05.01-CounterAtomic_solution/justfile
new file mode 100644
index 0000000..43d3962
--- /dev/null
+++ b/bin/src/pp.05.01-CounterAtomic_solution/justfile
@@ -0,0 +1,12 @@
+default:
+ mvn clean compile test
+exec args:
+ mvn exec:java -Dexec.args={{args}}
+clean:
+ mvn clean
+compile:
+ mvn compile
+test:
+ mvn test
+javadoc:
+ mvn javadoc:javadoc
diff --git a/bin/src/pp.05.01-CounterAtomic_solution/pom.xml b/bin/src/pp.05.01-CounterAtomic_solution/pom.xml
new file mode 100644
index 0000000..2b5d6c9
--- /dev/null
+++ b/bin/src/pp.05.01-CounterAtomic_solution/pom.xml
@@ -0,0 +1,60 @@
+
+ 4.0.0
+ pp
+ pp.05.01-CounterAtomic_solution
+ 1.0-SNAPSHOT
+ jar
+
+
+ 10
+ UTF-8
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ 5.10.0
+ test
+
+
+ org.projectlombok
+ lombok
+ 1.18.30
+ provided
+
+
+ net.jcip
+ jcip-annotations
+ 1.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.9.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 3.1.0
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+ private
+ en_US
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..88d3dc7
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,6 @@
+
+ 4.0.0
+ PP-Labs_WS-2024-2025
+ PP-Labs_WS-2024-2025
+ 0.0.1-SNAPSHOT
+
\ No newline at end of file