Skip to content

Realhedin/JenkovTutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 

Repository files navigation

TutorialsJenkov

Here are practice examples from Jakob Jenkov's tutorial on http://tutorials.jenkov.com/

Java Concurrency

Here are examples from Java Concurrency section to revise some things
and to learn new ones.

The following topics were implemented in my examples:

  1. Java Synchronized Blocks. (2 examples using one instance and two instances).
  2. Thread Local. (example with ThreadLocal variable).
  3. Thread Signaling. (2 examples with 4 different MyWaitNotify objects).
  4. Locks
    4.1. Basic (example with 2 different Counter objects).
    4.2. Reentrant (example with 2 different Reentrant objects).
  5. Read / Write Locks in Java.
    5.1. Basic
    5.2. Reentrant
  6. Semaphores.
    6.1. Signaling (example with using semaphore for signaling).
    6.2. Lock (example with using semaphore as lock).
  7. Blocking Queues. (example of using blocking queue implementated by hand).
  8. Thread Pools. (example of using thread pool implemented by hand).
  9. Non-blocking Algorithms.
    9.1. Volatile. (example of using "one writer and many readers" situation).
    9.2. Compare and Swap. (example of using "many writers and many readers" situation).


Java Concurrency Util

After revising inside of useful structures, I have started tutorial about java.util.concurrent package.

The following topics were currently implemented:

  1. Blocking Queue interface (queues package)
    1.2. ArrayBlockingQueue example
    1.3. DelayQueue example
    1.4. LinkedBlockingQueue example
    1.5. PriorityBlockingQueue example
    1.6. SynchronousQueue example
  2. Blocking Deque interface (deque package).
    2.1. LinkedBlockingDequeu example.
  3. ConcurrentMap interface (maps package).
    3.1. ConcurrentHashMap example.
    3.2. ConcurrentNagivableMap example.
  4. CountDownLatch example.
  5. CyclicBarrier example.
  6. Exchanger example.
  7. Semaphore.
    7.1. Semaphore as a lock example.
    7.2. Semaphore as a signaling mechanism example.
  8. ExecutorService interface
    8.1. Basic example.
    8.2. ThreadPoolExecutor example.
    8.3. ScheduledExecutorService example.
  9. ForkAndJoin.
    9.1. RecursiveAction example.
    9.2. RecursiveTask example.

From time to time, this section will be updated with examples...

About

Here are practice examples from Jenkov tutorial on http://tutorials.jenkov.com/

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages