Подтвердить что ты не робот

P/Invoke в Mono

Каков текущий статус Mono Платформа Invoke для Linux? И на Solaris?

4b9b3361

Ответ 1

Работает, годна к употреблению и стабильна. Он хорошо протестирован, так как довольно много монофункциональных низкоуровневых функций должно быть подключено к нему в базовую операционную систему.

Есть несколько P/Invoke extensions по сравнению с реализацией Microsoft.Net(в конце концов, они имеют дело с одним семейством ОС и тремя архитектурами на большинство). Наиболее заметным из них было бы то, что сопоставления библиотек преобразуют имя библиотеки в варианты, специфичные для ОС (например, mylib.dll выполняет поиск mylib.so в Linux, mylib.dylib в OS X и т.д.) И учитывают различные другие условные обозначения системы, Существует также расширение DLLMap, которое может быть использовано, если переводов имен по умолчанию недостаточно. Обычно удобно иметь один и тот же API двоичной библиотеки, открытый в разных ОС, поэтому для миграции между платформами требуется только изменение кода C, а не .Net.