22
Q
모노/호출
A
답변
28
실용적이고 안정적입니다. 상당히 많은 모노의 저수준 기능이 기본 운영 체제에 마샬링되어야하므로 잘 테스트되었습니다.
마이크로 소프트. 닷넷 구현과 비교했을 때 다소 P/Invoke extensions이 존재합니다 (결국 그들은 단일 OS 제품군과 3 가지 아키텍처 만 처리합니다). 가장 주목할만한 것은 라이브러리 매핑이 라이브러리 이름을 OS 관련 변형으로 변환한다는 것입니다 (예 : mylib.dll
은 Linux에서는 mylib.so
을 검색하고 OS X에서는 mylib.dylib
등을 찾습니다). 다양한 다른 시스템 특정 규칙을 고려해야합니다. 또한 기본 이름 변환이 충분하지 않은 경우 사용할 수있는 DLLMap 구성 확장이 있습니다. 일반적으로 서로 다른 운영체제에 공개 된 바이너리 라이브러리의 동일한 API를 사용하는 것이 편리하기 때문에 플랫폼 간의 마이그레이션에는 .Net 부분이 아닌 C 코드의 변경 만 필요합니다.