code: public static Executor getDefaultExecutor() {
          Executor exec = null;
  
          Class<?> c = null;
          Field field = null;
          try {
              c = Class.forName("android.os.AsyncTask");
              field = c.getDeclaredField("sDefaultExecutor");
              field.setAccessible(true);
              exec = (Executor) field.get(null);
              field.setAccessible(false);
          } catch (IllegalArgumentException e) {
              e.printStackTrace();
              Log.e("IllegalArgumentException", e);
          } catch (ClassNotFoundException e) {
              e.printStackTrace();
              Log.e("ClassNotFoundException", e);
          } catch (NoSuchFieldException e) {
              e.printStackTrace();
              Log.e("NoSuchFieldException", e);
          } catch (IllegalAccessException e) {
              e.printStackTrace();
              Log.e("IllegalAccessException", e);
          }
  
          return exec;
      }
docs: get the default Executor
  
  @return the default Executor