Reports thread-blocking method calls in code fragments where threads should not be blocked.

Example (Reactor):


Flux.just("1").flatMap(f -> {
    Flux<String> just = Flux.just(f);
    just.toIterable(); // Error: blocking operator call in non-blocking scope
    return just;
  }
);

Example (Kotlin Coroutines):


suspend fun exampleFun() {
    Thread.sleep(100); // Error: inappropriate blocking method call inside suspend function
}

Configure the inspection:

Specified annotations can be used as External Annotations