You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+44-41Lines changed: 44 additions & 41 deletions
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,13 @@
1
-
# java_concurrency_algorithms
2
-
Java algorithms examples using concurrency
1
+
# Java Concurrent Animated - Visualizing the Java Concurrent API
2
+
## A Swing Application Demonstrating Core Java Concurrency Concepts
3
+
4
+
Have you ever found yourself pondering how multiple threads work in Java and how to effectively utilize concepts like "notify", "notifyAll", and "wait"? Moreover, why is the usage of the "synchronized" keyword crucial in concurrent programming? Wouldn't it be amazing to witness this in action?
5
+
6
+
Introducing Java Concurrent Animated, a Swing application crafted by the Java Champion **[Victor Grazi](https://blogs.oracle.com/java/post/victor-grazi-java-champion)**. This program serves as an illustrative showcase of core Java Concurrency concepts, including but not limited to AtomicInteger, CountDownLatch, Semaphore, ReentrantLock, ReadWriteLock, and more.
7
+
8
+
```
9
+
Soon link to Medium Article
10
+
```
3
11
4
12
### 1. AtomicIntegerDemo
5
13
Description:
@@ -124,9 +132,8 @@ Description:
124
132
```
125
133
/**
126
134
* Simple sample of Producer/Consumer using ArrayBlockingQueue (ThreadSafe)
127
-
* - One Producer adds items in a pipeline in a frequency of 100ms
135
+
* - One Producer adds items in a pipeline in a frequency of 200ms
128
136
* - The pipeline has a limit of 5 items
129
-
* - When the pipeline is full, the Producer will wait for 500ms
130
137
* - Two consumers take items from the pipeline and consumes it in 500ms
0 commit comments