Salut,
Dans giacpy (version python pas dans sage) j'utilise le GIAC_ctrl_c_signal_handler.
Certaines instructions: Ex giac('normal(a+b+c+d+1)**60)') passent par protecteval
et d'autres passent par les operateurs:
notamment: toutes les fonction ou attributs utilsent __call__:
Ex: g.normal()
et donc passent par: gen operator()(gen & i,context * contextptr)
et pour +,- ... j'utilise aussi des operator.
Si j'interrompt un protecteval je n'ai aucun pb. Mais si j'interrompt un operateur, alors il ne veut plus redemarrer bien que j'ai mais des ressetctrl_c un peu partout. (giac::ctrl_c=false;)
il a l'air d'etre bien remis a false lorsque je le fais afficher, mais J'ai l'impression que les operateurs ne voient pas ce nouveau ctrl_c ou sont bloques par autre chose.
si je fais un protecteeval ensuite via: giac('') alors ca debloque bien g.normal().
Est ce que je devrais utiliser d'autres fonctions de giac, ou que fait protecteval que je devrais faire en plus de remettre ctrl_c a false.
ctrl_c
Modérateur : xcasadmin
-
- Messages : 1137
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: ctrl_c
Essaie aussi de mettre interrupted a false (c'est vrai que ca fait un peu double-emploi...).
-
- Messages : 1137
- Inscription : dim. mai 20, 2007 7:09 am
- Localisation : Paris
- Contact :
Re: ctrl_c
Super!
C'est exactement ca, cette fois c'est bien stable (sauf pari mais je n'ai pas envie de faire des threads en python)
Fred
C'est exactement ca, cette fois c'est bien stable (sauf pari mais je n'ai pas envie de faire des threads en python)
Fred