Avatar ·

Pourquoi Kotlin n'a-t-il pas de mots-clés pour la concurrence (synchronized, volatile) ?

Bonjour à tous ! Je suis un développeur débutant en Kotlin, venant de Java. En Java, j'avais l'habitude d'utiliser les mots-clés `synchronized`, `volatile`, ainsi que les blocs `synchronized` pour gérer l'accès aux ressources partagées dans les applications multithreadées. Mais quand j'ai commencé à coder en Kotlin, j'ai remarqué que le langage n'a pas ces mots-clés ! Par exemple, j'ai essayé d'écrire un compteur thread-safe simple : ```kotlin class Counter { private var count = 0 fun increment() { // Comment synchroniser cette méthode ? count++ } } ``` En Java, j'aurais écrit `public synchronized void increment()`, mais en Kotlin, une telle possibilité n'existe pas. J'ai trouvé dans la documentation qu'il y a l'annotation `@Synchronized` et `@Volatile`, mais ce n'est pas la même chose que les mots-clés. Il me semble que c'est une décision très étrange pour un langage qui prétend être un remplacement moderne de Java. Pourquoi les créateurs de Kotlin ont-ils abandonné ces mots-clés ? Comment dois-je maintenant écrire correctement du code multithreadé ? Faut-il