Showing items from Development and Programming

post-thumb

Under the Hood: Understanding Java Volatiles

Introduction

Upon revisiting the keyword volatile while scrutinizing a codebase, and deeply pondering its necessity and the underlying mechanisms, I realized that perhaps I hadn’t fully grasped its function. I understood that it was intended to address the synchronization issues of updating shared variables across multiple concurrent threads, yet I couldn’t summon a comprehensive overview of the techniques involved, from the inner workings of the JVM (Java Virtual Machine) to the computer’s memory.

Read more Details
post-thumb

A look in the rearview mirror, from JDK 1.3 to JDK 22

For reasons that I will have to detail in a future post, I am diving back partly into the code, and into Java. The last time I coded “for real”, it was to make Java applications on feature phones (the stuff between Nokia 3210 and smartphones), in J2ME , and Windows Mobile applications on Windows Phone. Before the era of smartphones therefore. Before that, I had developed mainly in Java for web services, via servlets, an in-house templating engine, then via Java Server Pages .

Read more Details