@Test
  public void testDRPutWithInterrupt() throws Exception {
    Future<Void> doPutWhileNotInterrupted = executorServiceRule.runAsync(() -> {
      puttingThread.set(Thread.currentThread());
      while (!Thread.currentThread().isInterrupted()) {
        region.put(0, nextValue.incrementAndGet());
      }
    });

    await().untilAsserted(() -> assertThat(puttingThread).isNotNull());
    Thread.sleep(Duration.ofSeconds(1).toMillis());
    puttingThread.get().interrupt();

    doPutWhileNotInterrupted.get(2, MINUTES);
    assertThat(region.get(0)).isEqualTo(nextValue.get());
  }
Test of interrupting threads doing disk writes to see the effect.
geode-core/src/integrationTest/java/org/apache/geode/internal/cache/InterruptDiskJUnitTest.java