diff --git a/SingletonClasses/.idea/.gitignore b/SingletonClasses/.idea/.gitignore
new file mode 100644
index 0000000..26d3352
--- /dev/null
+++ b/SingletonClasses/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/SingletonClasses/.idea/misc.xml b/SingletonClasses/.idea/misc.xml
new file mode 100644
index 0000000..31e1ebc
--- /dev/null
+++ b/SingletonClasses/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SingletonClasses/.idea/modules.xml b/SingletonClasses/.idea/modules.xml
new file mode 100644
index 0000000..a7beec2
--- /dev/null
+++ b/SingletonClasses/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SingletonClasses/.idea/vcs.xml b/SingletonClasses/.idea/vcs.xml
new file mode 100644
index 0000000..6c0b863
--- /dev/null
+++ b/SingletonClasses/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SingletonClasses/LogManagement.java b/SingletonClasses/LogManagement.java
new file mode 100644
index 0000000..5d2bfe2
--- /dev/null
+++ b/SingletonClasses/LogManagement.java
@@ -0,0 +1,28 @@
+package SingletonClasses;
+
+public class LogManagement {
+
+ // First we create an instance of the class
+ private static LogManagement logM;
+
+ // Second, we create a PRIVATE constructor (PRIVATE TO AVOID INSTANTIATION)
+ private LogManagement() {
+
+ }
+
+ // We create public method to access the one and ONLY instance
+ public static LogManagement FuncLog() {
+ if (logM == null) {
+ synchronized (LogManagement.class) {
+ if (logM == null) {
+ logM = new LogManagement();
+ }
+ }
+ }
+ return logM;
+ }
+
+ public void Logs() {
+ System.out.println("Detailed logs on the way");
+ }
+}
diff --git a/SingletonClasses/LogReading.java b/SingletonClasses/LogReading.java
new file mode 100644
index 0000000..07bee69
--- /dev/null
+++ b/SingletonClasses/LogReading.java
@@ -0,0 +1,11 @@
+package SingletonClasses;
+
+/**
+ * LogReader
+ */
+public class LogReading {
+ public static void main(String[] args) {
+ LogManagement.FuncLog().Logs();
+
+ }
+}
diff --git a/SingletonClasses/MultiThreads.java b/SingletonClasses/MultiThreads.java
new file mode 100644
index 0000000..03ca496
--- /dev/null
+++ b/SingletonClasses/MultiThreads.java
@@ -0,0 +1,35 @@
+package SingletonClasses;
+
+public class MultiThreads {
+ public static void main(String[] args) {
+
+
+ Runnable tast = () -> {
+ LogManagement.FuncLog().Logs();
+ };
+ Thread thread1 = new Thread(tast);
+ Thread thread2 = new Thread(tast);
+ Thread thread3 = new Thread(tast);
+ Thread thread4 = new Thread(tast);
+ Thread thread5 = new Thread(tast);
+ Thread thread6 = new Thread(tast);
+
+ thread1.start();
+ thread2.start();
+ thread3.start();
+ thread4.start();
+ thread5.start();
+ thread6.start();
+ try{
+
+ thread1.join();
+ thread2.join();
+ thread3.join();
+ thread4.join();
+ thread5.join();
+ thread6.join();
+ }catch (InterruptedException e){
+ e.printStackTrace();
+ }
+ }
+}
\ No newline at end of file
diff --git a/SingletonClasses/SingletonClasses.iml b/SingletonClasses/SingletonClasses.iml
new file mode 100644
index 0000000..cd06a88
--- /dev/null
+++ b/SingletonClasses/SingletonClasses.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/.gitignore b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/.gitignore
new file mode 100644
index 0000000..26d3352
--- /dev/null
+++ b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/misc.xml b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/misc.xml
new file mode 100644
index 0000000..31e1ebc
--- /dev/null
+++ b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/modules.xml b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/modules.xml
new file mode 100644
index 0000000..a7beec2
--- /dev/null
+++ b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/vcs.xml b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/vcs.xml
new file mode 100644
index 0000000..6c0b863
--- /dev/null
+++ b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/LogManagement.class b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/LogManagement.class
new file mode 100644
index 0000000..7e679e5
Binary files /dev/null and b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/LogManagement.class differ
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/LogReading.class b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/LogReading.class
new file mode 100644
index 0000000..9c28044
Binary files /dev/null and b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/LogReading.class differ
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/MultiThreads.class b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/MultiThreads.class
new file mode 100644
index 0000000..8c5c70f
Binary files /dev/null and b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/MultiThreads.class differ
diff --git a/SingletonClasses/out/production/SingletonClasses/SingletonClasses/SingletonClasses.iml b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/SingletonClasses.iml
new file mode 100644
index 0000000..cd06a88
--- /dev/null
+++ b/SingletonClasses/out/production/SingletonClasses/SingletonClasses/SingletonClasses.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file