Guard: Signal-Trapping funktioniert unter Windows nicht

Erstellt am 6. Mai 2011  ·  3Kommentare  ·  Quelle: guard/guard

Wie hier und hier besprochen

bug

Hilfreichster Kommentar

LOL, hier ist eine vollständige Liste der unterstützten Signale und dokumentierten Best Practices , um den Rest zu umgehen. Habe Spaß! ^_^;

Alle 3 Kommentare

Wollen Sie mir sagen, dass eine Spezifikation für die Interoperabilität zwischen von Unix abgeleiteten Betriebssystemen von einem Betriebssystem mit einer Geschichte, die fast vollständig von Unix getrennt ist, nicht eingehalten wird? Ja, nein, das klingt ungefähr richtig. ;)

Posix-Signale sind Portierung von Debian, die darauf abzielt. Wie ist das für erschreckend?

Wie auch immer, springe zurück zu Rubin. Die anfängliche Portierung wurde mit Cygwin durchgeführt. Cygwin ist eine absolut massive POSIX- und allgemeine UNIX-Kompatibilitätsschicht, die Leistung, Laufzeitgröße und Funktionalität als Kosten der Kompatibilität opfert. Es bietet jedoch eine absolute Fülle von Unix-Komfort in ansonsten feindlichem Gebiet. Es würde mich nicht im Geringsten überraschen, wenn das Signaltrapping in Windows gut funktionieren würde, solange Sie einen auf Cygwin basierenden Rubin verwenden.

Der ursprüngliche Windows-Ein-Klick-Installer nutzte Visual Studio 6, das uralte Dinosaurier ist. Das aktuelle Windows-Ein-Klick-Installationsprogramm verwendet mingw und msys. Beide würden Posix-Signale nicht unterstützen, aber ich weiß nicht viel mehr. Ich warf einen Blick darauf, sah "gcc.bat" und "make.bat" und wurde sehr traurig.

Abgesehen davon definiert ISO C99 eine kleine Anzahl von Nicht-Posix-Signalen, die von den Implementierern unterstützt werden müssen, aber die einzigen beiden, die über einen Exit-Handler abfangbar sind, sind SIGINT und SIGTERM (zumindest gemäß Spezifikation, und wir alle wissen, wie) Microsoft liebt es, sich an Standards zu halten).

LOL, hier ist eine vollständige Liste der unterstützten Signale und dokumentierten Best Practices , um den Rest zu umgehen. Habe Spaß! ^_^;

Vielen Dank für Ihre Recherche, ich denke, wir müssen eine Problemumgehung finden und Signale unter Windows überspringen :)

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen