Programmation asynchrone en Ruby : présentation de la gem Celluloid (Partie 4)

Après concurrent-ruby, continuons notre tour des gems avec Celluloid.

La syntaxe de la gem est identique au module Async de concurrent-ruby :

Ceci dit contrairement à concurrent-ruby, la méthode await n’existe pas pour écrire du code synchrone bloquant thread-safe. La gem implémente également les Futures, mais pas les Promises ni toutes les autres fonctionnalités présentées dans la partie 3. Elle est donc bien moins intéressante et ne semble pas avoir, au vu de sa faible documentation, de fonctionnalité particulière que n’offrirait pas son alternative.

Il existe probablement d’autres gems à étudier, telle que EventMachine (plus complexe et lourde à mettre en place), ceci dit je pense que concurrent-ruby peut déjà répondre à un éventail très large de cas de figure. Passons sans attendre à notre 5ème et dernière partie sur l’avenir en Ruby 3.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.