OVH Cloud OVH Cloud

Tk et le fork

7 réponses
Avatar
Srand
Salut,

Je pr=E9sume que c'est une question r=E9currente, mais j'ai googl=E9 pas
mal avant sans trop de succ=E8s.

J'ai cru lire que TK ne supporte pas le fork, est-ce vrai (je suis en
version 5.8) ?
Pourtant =E7a fonctionne sous linux mais =E7a me crash l'appli sous win
XP ?

Y a t il une autre solution pour une op=E9ration couteuse en temps, et
qui doit continuer apr=E8s la fin du script TK ?

Merci.

7 réponses

Avatar
Paul Gaborit
À (at) 17 Oct 2005 06:14:18 -0700,
"Srand" écrivait (wrote):
J'ai cru lire que TK ne supporte pas le fork, est-ce vrai (je suis en
version 5.8) ?
Pourtant ça fonctionne sous linux mais ça me crash l'appli sous win
XP ?

Y a t il une autre solution pour une opération couteuse en temps, et
qui doit continuer après la fin du script TK ?


Il suffit de faire le fork dans un script qui n'utilise pas Tk. Puis
ensuite, le père (ou le fils) exécute un script utilisant Tk et
continue à dialoguer comme prévu avec son fils (ou son père).

--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>

Avatar
Srand
Il faut donc forker dès le départ et non seulement quand une opération
doit être effectuée ?

c'est fastidieux...
Avatar
Srand
Il faut donc forker des le depart et non seulement quand une operation
doit etre effectuee


c'est fastidieux...

N'y aurait il pas un autre moyen ?
Avatar
Paul Gaborit
À (at) 18 Oct 2005 03:35:54 -0700,
"Srand" écrivait (wrote):
Il faut donc forker des le depart et non seulement quand une operation
doit etre effectuee


c'est fastidieux...

N'y aurait il pas un autre moyen ?


Il est toujours possible d'utiliser le module 'Win32::Process' mais ça
ne passe plus par l'émulation de 'fork'. Ce n'est donc plus
portable. Et il faut trouver le bon moyen de communiquer avec la tâche
créée (faire du client/serveur, par fichier, etc.).

--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>

Avatar
Srand
Par contre ça nécessite un script en plus. Et le processus est il
détaché du script qui le crée ?
Avatar
Paul Gaborit
À (at) 18 Oct 2005 11:42:23 -0700,
"Srand" écrivait (wrote):
Par contre ça nécessite un script en plus.


On peut très bien imaginer que c'est le même script qui change de
comportement en fonction des arguments d'appel.

Et le processus est il détaché du script qui le crée ?


Les deux tâches (le processus qui exécute le script initial et le
second processus créé par le premier) sont complètement indépendantes.

--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>

Avatar
Srand
ok. je vais donc voir de ce côté. Merci