Mail :
India : +91-8143-111-555
USA : +1-703-445-4802
Whats app : +91-8143-110-555
Facebook Twitter Google Plus Pinit Stumbleupon Youtube Blog

Workday HCM Demo New Batches Starting from Tuesday... 01-11-2016
Search Course Here

Live Chat
Java Concurrency online training

Java Concurrency


Concurrency is the ability to run several programs or several parts of a program in parallel. If a time consuming task can be performed asynchronously or in parallel, this improve the throughput and the interactivity of the program.
The Java programming language and the Java virtual machine (JVM) have been designed to support concurrent programming, and all execution takes place in the context of threads. Objects and resources can be accessed by many separate threads each thread has its own path of execution but can potentially access any object in the program.


  • Java programmer.


  • It is a 16 days program and extends up to 2hrs each.
  • The format is 40% theory, 60% Hands-on.

  • It is a 4 days program and extends up to 8hrs each.
  • The format is 40% theory, 60% Hands-on.
    Private Classroom arranged on request and minimum attendies for batch is 4.

course content

  • Introduction
  • History of concurrency
  • Benefits of threads
  • Risks of threads
  • Threads are everywhere
  • Annotations for Concurrency
    • Class annotations
    • Field and method annotations
  • The Java Memory
    • What is a memory model, and why would I want one?
    • Publication
    • Initialization safety
  • Thread Safety
    • What is thread safety?
    • Atomicity
    • Locking
    • Guarding state with locks
    • Liveness and performance
  • Sharing Objects
    • Visibility
    • Publication and escape
    • Thread confinement
    • Immutability
    • Safe publication
  • Composing Objects
    • Designing a thread-safe class
    • Instance confinement
    • Delegating thread safety
    • Adding functionality to existing thread-safe classes
    • Documenting synchronization policies
  • Building Blocks
    • Synchronized collections
    • Concurrent collections
    • Blocking queues and the producer-consumer pattern
    • Blocking and interruptible methods
    • Synchronizers
    • Building an efficient, scalable result cache
  • Structuring Concurrent Applications
  • Task Execution
    • Executing tasks in threads
    • The Executor framework
    • Finding exploitable parallelism
  • Cancellation and Shutdown
    • Task cancellation
    • Stopping a thread-based service
    • Handling abnormal thread termination
    • JVM shutdown
  • Applying Thread Pools
    • Implicit couplings between tasks and execution policies
    • Sizing thread pools
    • Configuring ThreadPoolExecutor
    • Extending Thread Pool Executor
    • Parallelizing recursive algorithms
  • Single-threaded subsystems
    • Why are some subsystems single-threaded?
    • Short-running tasks
    • Long-running tasks
    • Shared data models
    • Other forms of single-threaded subsystems
  • Liveness, Performance, and Testing
  • Avoiding Liveness Hazards
    • Deadlock
    • Avoiding and diagnosing deadlocks
    • Other liveness hazards
  • Performance and Scalability
    • Thinking about performance
    • Amdahl's law
    • Costs introduced by threads
    • Reducing lock contention
    • Reducing context switch overhead
  • Testing Concurrent Programs
    • Testing for correctness
    • Testing for performance
    • Avoiding performance testing pitfalls
    • Complementary testing approaches
    Advanced Topics
  • Explicit Locks
    • Lock and ReentrantLock
    • Performance considerations
    • Fairness
    • Choosing between synchronized and ReentrantLock
    • Read-write locks
  • Building Custom Synchronizers
    • Managing state dependence
    • Using condition queues
    • Explicit condition objects
    • Anatomy of a synchronizer
    • AbstractQueuedSynchronizer
    • AQS in java.util.concurrent synchronizer classes
  • Atomic Variables and Nonblocking Synchronization
    • Disadvantages of locking
    • Hardware support for concurrency
    • Atomic variable classes
    • Nonblocking algorithms


Java Concurrency Videos will be updated Soon
To Watch More Videos Click Here

Flash News

AngularJS New Batch Start From 09th OCT & 10th OCT.

Hadoop Dev New Batch Start From 10th OCT & 11th OCT.

IBM COGNOS TM New Batch Start From 11th OCT & 12th OCT.

Informatica Dev New Batch Start From 12th OCT & 13th OCT.

Mean Stack New Batch Start 13th OCT & 14th OCT.

SAP BODS new Batch Starting From 14th OCT & 15th OCT.

SAP S/4 HANA New Batch Start From 15th OCT & 16th OCT

Tableau New Batch Start From 16th OCT & 17th OCT


(1) Workday Technical Demo Training

Demo Schedule : 09:30A.M EST / 08:30A.M CST / 6:30A.M PST on 13th OCT & 07:00A.M IST on 14th OCT

(2) SAP MII Demo Training

Demo Schedule : 09:30A.M EST / 08:30A.M CST / 6:30A.M PST on 13th OCT & 07:00A.M IST on 14th OCT

Email :
Rediff Bol :
Google Talk :
MSN Messenger :
Yahoo Messenger :
Skype Talk :