RFECV crashes with a non-pickable error even if n_jobs is set to 1.

### Describe the bug

When using the .fit method, the code crashes with warnings related to jbolib and no errors, even when n_jobs is set to 1.

### Steps/Code to Reproduce
```py
rfecv = RFECV(
        estimator = regressors[0],
        step = 1,
        cv = cv_A,
        scoring='neg_root_mean_squared_error',
        min_features_to_select=min_features_to_select,
        n_jobs=n_jobs,
        verbose=True)

    print('here goes nothing')

    selector = rfecv.fit(X,y)
```
### Expected Results

A clear error message and the code crashes OR no error is returned and the code does not crash.

Suggestion in:

    https://github.com/scikit-learn/scikit-learn/blob/9aaed498795f68e5956ea762fef9c440ca9eb239/sklearn/feature_selection/_rfe.py#L719

Change:
```py
        if effective_n_jobs(self.n_jobs) == 1:
            parallel, func = list, _rfe_single_fit
        else:
            parallel = Parallel(n_jobs=self.n_jobs)
            func = delayed(_rfe_single_fit)
        scores = parallel(
            func(rfe, self.estimator, X, y, train, test, scorer)
            for train, test in cv.split(X, y, groups)
        )
```

To: 

```py
        if self.n_jobs == 1:
            # avoids JobLib alltogether
            scores = list(_rfe_single_fit(rfe, self.estimator, X, y, train, test, scorer)
            for train, test in cv.split(X, y, groups)
        )
        else:
            # JobLib wanted
            scores = Parallel(n_jobs=self.n_jobs)(delayed(_rfe_single_fit)(rfe, self.estimator, X, y, train, test, scorer)
            for train, test in cv.split(X, y, groups)
        )

```

Additionally, it could be good to have a try, except statement when dealing with JobLib, where the except would crash the code with some error message.

### Actual Results

```
/python-data-2022-09/bin/python3: line 22: 2714665 Segmentation fault      /usr/bin/singularity --silent exec -B $DIR/../$SQFS_IMAGE:$INSTALLATION_PATH:image-src=/ $DIR/../$CONTAINER_IMAGE bash -c "eval \"\$(/CSC_CONTAINER/miniconda/bin/conda shell.bash hook )\"  && conda activate env1 &>/dev/null &&  exec -a $_O_SOURCE $DIR/python3 $( test $# -eq 0 || printf " %q" "$@" )"
/miniconda/envs/env1/lib/python3.10/site-packages/joblib/externals/loky/backend/resource_tracker.py:318: UserWarning: resource_tracker: There appear to be 6 leaked semlock objects to clean up at shutdown
  warnings.warn('resource_tracker: There appear to be %d '
/miniconda/envs/env1/lib/python3.10/site-packages/joblib/externals/loky/backend/resource_tracker.py:318: UserWarning: resource_tracker: There appear to be 1 leaked folder objects to clean up at shutdown
  warnings.warn('resource_tracker: There appear to be %d '
```

### Versions

```shell
System:
    python: 3.10.6 | packaged by conda-forge | (main, Aug 22 2022, 20:35:26) [GCC 10.4.0]
executable: /python-data-2022-09/bin/python3
   machine: Linux-4.18.0-372.46.1.el8.x86_64-x86_64-with-glibc2.28

Python dependencies:
      sklearn: 1.1.2
          pip: 22.2.2
   setuptools: 65.3.0
        numpy: 1.23.2
        scipy: 1.9.1
       Cython: 0.29.32
       pandas: 1.4.4
   matplotlib: 3.5.3
       joblib: 1.1.0
threadpoolctl: 3.1.0

Built with OpenMP: True

threadpoolctl info:
       user_api: blas
   internal_api: openblas
         prefix: libopenblas
       filepath: /miniconda/envs/env1/lib/libopenblasp-r0.3.21.so
        version: 0.3.21
threading_layer: pthreads
   architecture: SkylakeX
    num_threads: 1

       user_api: openmp
   internal_api: openmp
         prefix: libgomp
       filepath: /miniconda/envs/env1/lib/libgomp.so.1.0.0
        version: None
    num_threads: 1
```

COMMENT:
Happy to re-open when we have a reproducible.

Labels: Bug, Needs Reproducible Code, Needs Triage