Le post ci-dessus dit "il n'y a pas d'autre moyen pour perl de le faire", ce qui n'est pas vrai.
Depuis que vous avez mentionné la suppression de fichier, jetez un oeil à IO::AIO. Cela effectue les appels système dans un autre thread (thread POSIX, pas Perl pseudothread); vous planifiez la demande avec aio_rmtree
et quand cela est fait, le module appellera une fonction dans votre programme. En attendant, votre programme peut faire tout ce qu'il veut.
Faire des choses dans un autre thread POSIX est en fait une technique généralement utile. (Une version piratée spéciale de) Coro l'utilise pour anticiper les coroutines (time slicing), et EV :: Loop :: Async l'utilise pour envoyer des notifications d'événements même lorsque Perl fait autre chose que d'attendre des événements.
Quel système d'exploitation/plate-forme? –
J'utilise linux. –
Fork est l'idiome de l'OS pour les processus - il n'y a aucune raison d'éviter de forker sur les systèmes nix. Mais il y a toujours des raisons d'encapsuler et d'homogénéiser les points d'accès. – Axeman