Skip to content

dinora07/java-concurrency-lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Java Concurrency Lab πŸ”₯

Practical implementations of Java Multithreading and Concurrency concepts.


πŸ“š Covered Topics

πŸ”Ή Basic Multithreading

  • Thread creation
  • Thread lifecycle
  • Daemon threads

πŸ”Ή Concurrency Problems

  • Race condition
  • Synchronized methods & blocks
  • Volatile keyword
  • Deadlock
  • wait / notify (Condition)

πŸ”Ή Modern Concurrency

  • Atomic variables
  • Thread pools (ExecutorService)
  • Callable & Future
  • CompletableFuture
  • ForkJoin Framework

πŸ”Ή Thread-Safety Techniques

  • Thread-safe collections
  • Immutable classes
  • Singleton in multithreaded environment

πŸ“‚ Project Structure

src/
 β”œβ”€β”€ basic
 β”œβ”€β”€ concurrency
 β”œβ”€β”€ atomic
 β”œβ”€β”€ collections
 β”œβ”€β”€ executor
 β”œβ”€β”€ async
 β”œβ”€β”€ forkjoin
 β”œβ”€β”€ immutable
 └── singleton

πŸ›  Technologies Used

  • Java 17+
  • java.util.concurrent
  • ForkJoinPool
  • ExecutorService
  • CompletableFuture

▢️ How to Run

Each example contains a main() method.
Run any class individually to observe the behavior.


🎯 Purpose

This project is built for:

  • Strengthening Java concurrency knowledge
  • Interview preparation
  • Demonstrating practical understanding of multithreading

πŸ’‘ Author

Created as part of advanced Java concurrency learning journey.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages