Почему CompletableFuture реализует интерфейс Future - PullRequest
0 голосов
/ 03 апреля 2019

в Java 8, параметр mayInterruptIfRunning метода CompletableFuture#cancel(mayInterruptIfRunning) не вступает в силу, что, я думаю, нарушает контракт, определенный в java.util.concurrent.Future.

Это вызовет проблему при переносе кода с Future на CompletableFuture, не замечая этого изменения договора.

Также, похоже, нарушает принцип подстановки Лискова.

статья по теме: https://www.nurkiewicz.com/2015/03/completablefuture-cant-be-interrupted.html

...