try-with-resources vs structured concurrency
    Remi Forax 
    forax at univ-mlv.fr
       
    Sat Nov 20 13:57:23 UTC 2021
    
    
  
Playing with the StructuredExecutor,
i've trouble to write the correct code when i use a structured executor inside a structured executor,
so in several tests, I wrote something like this
    try(var executor = StructuredExecutor.open()) {
      try(var executor2 = StructuredExecutor.open()) {
        var handler = new StructuredExecutor.ShutdownOnSuccess<Integer>();
        executor2.fork(() -> 3, handler);
        executor2.fork(() -> 7, handler);
        executor.join();     // <--- oops
        System.out.println(handler.result());
      }
      executor.join();
    }
sadly, there is no way in Java to hide a local variable with another one
   try(var executor = StructuredExecutor.open()) {
      try(var executor = StructuredExecutor.open()) {  // reuse executor here
even if this is what we want here.
Rémi
    
    
More information about the loom-dev
mailing list