Protobuf meets Valhalla — hacking with Java Value Classes (JEP 401)
I like messing with new Java features. This time I tried combining value classes (JEP 401) with Protocol Buffers, not because I needed to…
I’ve been playing with #ProjectValhalla and the new #Java Value Classes (JEP 401), and I thought:
“What happens if Protobuf messages become value classes?” 🤔
So I wrote a small protoc plugin and ran a few experiments:
dariobalinzo.medium.com/protobuf-mee...
23.11.2025 13:13 —
👍 3
🔁 2
💬 0
📌 0
Virtual Threads Ate My Memory: A Web Crawler’s Tale of Speed vs. Memory
I built a simple web crawler using good old platform threads. It was just a multithreaded crawler, nothing fancy. But then, curiosity…
I wrote this blog post to share some hacking sessions with the new #Java #Virtual #Threads.
While these are new and cool tools, they can hide new pitfalls to solve.. see the details in the post!
dariobalinzo.medium.com/virtual-thre...
#java24 #performance
29.05.2025 12:34 —
👍 4
🔁 2
💬 0
📌 0
A memory model addresses challenges arising from cpu caches and the need for processors to see consistent values. And also compilers and processors may reorder instructions for optimization, making a memory model necessary to handle these cases! 🤯
22.12.2024 11:18 —
👍 0
🔁 0
💬 0
📌 0
synchronization mechanisms ensures that memory writes by a thread are made visible to other threads in a predictable manner. 🔎
In #java we have a memory model that define the conditions under which writes to memory by one processor become visible to other processors. ☕️
22.12.2024 11:17 —
👍 1
🔁 1
💬 0
📌 0