Java 21 a été publié il y a environ un an et demi, et parmi les nouveautés de cette version se trouvent les threads virtuels, apportés par le projet Loom. Une des choses qu'ils apportent est la possibilité de revenir au modèle "un thread par requête", tout en maximisant l'utilisation du CPU, quelque chose qui n'est possible qu'avec la programmation réactive. Comment les threads virtuels peuvent-ils apporter de telles performances ? Rendent-ils vraiment le modèle réactif obsolète ? Et d'ailleurs que signifie l'obsolescence dans ce contexte ? Voici les questions auxquelles nous allons répondre dans cette présentation. Les threads virtuels ne coûtent pas cher, on peut en créer autant que l'on veut. Ils apportent une nouvelle API : la concurrence structurée, qui apporte un nouveau modèle de programmation asynchrone, plus simple que le modèle réactif. Le dernier élément qui complète le tout sont les ScopedValue, qui visent à remplacer les variables ThreadLocal, dont nous parlerons aussi.
Amphithéâtre Hamilton
José is a member of the Java Developer Advocacy team at Oracle. He holds a PhD in applied mathematics and computer science and was an assistant professor at the University Sorbonne Paris Nord. José is an active member of the Paris Java User Group, has been a co-organizer of the Devoxx France conference, and is currently a disorganizer of the JChateau unconference. He contributes Java learning content on the dev.java website and publishes the "JEP Café", a monthly video cast on the official Java YouTube channel.