Импорт модуля python в .net - «Нет модуля с именем signal» - PullRequest
3 голосов
/ 11 мая 2009

Я пытаюсь импортировать модуль Python в код C # следующим образом:

        var setup = Python.CreateRuntimeSetup(null);
        var runtime = new ScriptRuntime(setup);
        var engine = Python.GetEngine(runtime);
        var module = engine.ImportModule("mymodule");

но я получаю сообщение об ошибке «Нет модуля с именем signal», означает ли это, что IronPython просто не может загрузить модуль сигнала, это зависит от ОС?

Кто-нибудь может подумать об обходном пути?

1 Ответ

2 голосов
/ 11 мая 2009

Модуль «сигнал» используется для обработки всего, что связано с ... как вы уже догадались: сигналы. Существуют специальные «сообщения», которые ОС отправляет процессу, чтобы сказать ему что-то: например. Break, Kill, Terminate и т. Д. Точный набор сообщений обычно зависит от ОС, но, как указано в сигналы страницах руководства Python, python эмулирует интерфейс в стиле BSD, за исключением SIGCHLD.

Теперь, в CPython, модуль 'signal' является встроенным, насколько я помню, возможно, возможно, что IronPython не реализовал его, на самом деле, быстрый поиск в Google и просмотр сайта IronPython приводят к этому. : Различия IronPython и CPython (прочтите, в частности, часть модулей расширения!)

Возможное решение: отредактируйте ваш модуль, чтобы не использовать сигналы в IronPython

...