Ne “rien”, alors que “condition”

Lors de la navigation sur le code pour Java 8 version de ForkJoinPool(qui a un peu de changements intéressants à partir de Java 7) j'ai couru à travers cette construction (ici):

do {} while (!blocker.isReleasable() &&
             !blocker.block());

J'ai du mal à comprendre pourquoi vous l'écrire comme ça au lieu de simplement

while (!blocker.isReleasable() &&
       !blocker.block());

Est-ce juste une sémantique et la lisibilité de choix, puisque vous avez pu lire la première construction que do "nothing" while "conditions"? Ou est-il un avantage supplémentaire que je suis absent?