code: public synchronized ThreadFactory setImpl(ThreadFactory f) {
  
          ThreadFactory old;
  
          old     = factory;
          factory = (f == null) ? this
                                : f;
  
          return old;
      }
docs: Sets the factory implementation that this factory will use to
  produce threads.  If the specified argument, f, is null, then
  this factory uses itself as the implementation.
  
  @param f the factory implementation that this factory will use
  to produce threads
  @return the previously installed factory implementation