Java Concurrency Troubleshooting: Data Access and Consistency

Java Concurrency Troubleshooting: Data Access and Consistency

59mIntermediate2021-02-23

Authors

Tayo Koleoso

Tayo Koleoso

Lead Programmer

Course details

Having multiple users for your applications is great, right? More often than not, you probably didn’t spend all that time developing your app just to have one single person use it. Of course, the moment you have more than one user running your Java application, you have a whole set of new problems. In this course, instructor Tayo Koleoso shows the various and frustrating ways accessing runtime data can fall apart in a multiuser Java application. Follow along with Tayo as he takes a deep dive into Java troubleshooting to show developers how to identify, prevent, and solve data access and consistency issues in a multithreaded environment. Whether you’re working in an SQL database or accessing simple class variables, Tayo gives you tools and tips to help you predict and recognize where multithreading can go wrong.

Skills covered

Software Design PatternsJavaOracleSoftware DevelopmentDeep Dive (X:Y)

Concepts

Introduction

  • Welcome to safe data in Java
  • Threads and runtime data

Common Concurrent Data Access Pitfalls

  • Race conditions in code
  • Unsafe class-level variable access
  • Unsafe data structures
  • Deadlocked threads
  • Database transaction management
  • Database lost updates
  • Long-running transactions
  • Java streams and Lambda concurrency issues

Troubleshoot Deadlocked Threads

  • Capture a thread dump
  • Find deadlocks in a thread dump
  • Challenge Find deadlocks in a thread dump
  • Solution Find deadlocks in a thread dump

Conclusion

  • Finish line
40,000 Toman