code: public void remove() {
          Thread thread = Thread.currentThread();
          if (thread instanceof ThreadPool.Worker) {
              Object[] wsLocals = getThreadLocals((ThreadPool.Worker) thread);
              wsLocals[index] = null;
          } else {
              super.remove();
          }
      }
docs: doesn't) and that it resets the value to its initial value