vous voulez dire qu'une spécification d'interopérabilité entre les systèmes d'exploitation dérivés d'unix n'est pas respectée par un système d'exploitation avec une histoire presque entièrement déconnectée d'unix ? Ouais, non, ça sonne bien. ;)
Les signaux Posix ne sont généralement pas disponibles sous Windows pour autant que je sache. Il existe un sous-système officiellement pris en charge avec un sous-ensemble varié d'API POSIX, mais apparemment uniquement si vous achetez la version entreprise ou ultime de vista/win7. Cela inclut la possibilité d'écrire un logiciel qui prend en charge les signaux POSIX (mais pas leur prise en charge automatique). Bon sang, l'entreprise Windows Unix... chose... a même un vieux port de Debian apparemment non maintenu qui la cible. Comment est-ce pour terrifiant?
Quoi qu'il en soit, revenons à ruby. Le port initial a été fait en utilisant cygwin. Cygwin est une couche de compatibilité POSIX et UNIX générale absolument massive qui sacrifie les performances, la taille de l'exécution et les fonctionnalités en tant que coût de compatibilité. Il fournit cependant une richesse absolue de confort unix dans un territoire autrement hostile. Cela ne me surprendrait pas le moins du monde si le piégeage du signal fonctionnait parfaitement dans Windows tant que vous utilisiez un rubis à base de cygwin.
Le programme d'installation en un clic de Windows d'origine utilisait Visual Studio 6, un ancien dinosaure. Le programme d'installation en un clic de Windows utilise mingw et msys. Ni l'un ni l'autre ne prendrait en charge les signaux posix, mais je n'en sais pas plus que cela. J'ai jeté un coup d'œil, j'ai vu un "gcc.bat" et un "make.bat", et je suis devenu très triste.
Soit dit en passant, ISO C99 définit un petit nombre de signaux non-posix que les implémenteurs sont tenus de prendre en charge, mais les deux seuls qui peuvent être interceptés via un gestionnaire de sortie sont SIGINT et SIGTERM (au moins selon les spécifications, et nous savons tous comment beaucoup de microsoft aime se conformer aux normes).
LOL, voici une liste complète des signaux pris en charge et des meilleures pratiques documentées pour contourner le reste. S'amuser! ^_^;
Merci pour vos recherches, je pense que nous devrons trouver une solution de contournement et ignorer les signaux sur Windows :)
Commentaire le plus utile
LOL, voici une liste complète des signaux pris en charge et des meilleures pratiques documentées pour contourner le reste. S'amuser! ^_^;