MagicStack / MagicStack/uvloop

uvloop simply disable SIGCHLD?

Ouverte
#409 1 commentaire 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Cython
Étoiles
11.9k
Forks
616
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

* **uvloop version**: 0.14.0
* **Python version**: 3.6.8
* **Platform**: linux
* **Can you reproduce the bug with `PYTHONASYNCIODEBUG` in env?**:
* **Does uvloop behave differently from vanilla asyncio? How?**: uvloop cannot add SIGCHLD handler

I need to monitor child process exit.
```
loop.add_signal_handler(signal.SIGCHLD, handle_child_exit)
```

However, uvloop simply disable the signal with the following error.
RuntimeError: cannot add a signal handler for SIGCHLD: it is used by the event loop to track subprocesses

Is there any solution to support SIGCHLD?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Start with the reported loop.add_signal_handler(signal.SIGCHLD, handle_child_exit) case and reproduce the RuntimeError on Linux with uvloop 0.14.0. Compare the behavior with vanilla asyncio, then determine whether SIGCHLD can be supported without breaking the event loop's subprocess tracking. Done means child-process exits can be monitored through a user handler without that conflict.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
operating-systems
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.