Concurrency is the branch of our discipline used to scare naughty juniors. Seniors tell horrifying stories of catastrophic failures, and architects avoid it like the plague—because who cares? They’ll just add more resources to the Kubernetes cluster.
Many Java programmers have heard of ReentrantLock or ArrayBlockingQueue, but the java.util.concurrent package offers many more tools that—when used properly—allow you to write safe, scalable, and efficient concurrent code (insert sarcastic and demonic laughter from the afterlife here).
This presentation aims to explore the "concurrency primitives" hidden within the java.util.concurrent package, showcasing the practical use of lesser-known components such as Phaser, Exchanger, Semaphore, CountDownLatch, and various queue implementations. These concurrency primitives are like Lego blocks, which we’ll use during the presentation to build solutions such as a cache, an object pool, a batch executor, an actor system, and even a map-reduce engine.
Our speaker will also talk a bit about the Java Memory Model—in a practical sense, without oppressing humanity with theoretical considerations—and share tools and methodologies for testing concurrent code.
Speaker
Jarosław Pałka - Senior Staff Software Engineer, Team lead, Benchmarking infrastructure in Neo4j.
He is a performance engineer/team lead with more than 20 years in the IT industry as a database administrator, programmer, architect, manager, and onsite disaster engineer. Jaroslaw authors a blog in http://geekyprimitives.com/, and is one of the founders of the SegFault conference brand.
Event details:
Date - 22 July
Time - Time: CDT - 11:00 AM |7:00 PM UA | 6:00 PM PL |10:00 AM MX |10:00 AM CR| 1:00 PM AR
Duration - 1.5 hours (60 min. speech + 30 min. Q&A)
Language - English
All other details will be sent after registration.
Registration is free and mandatory.