Spec-Zone.ru › OCaml
☰Библиотека OCaml
  • Основная библиотека
  • Стандартная библиотека
  • Передняя часть компилятора
  • Библиотека unix: системные вызовы Unix
  • Библиотека str: регулярные выражения и обработка строк
  • Библиотека runtime_events
  • Библиотека потоков
  • Библиотека dynlink: динамическая загрузка и компоновка объектных файлов
  • Недавно удалённые или перемещённые библиотеки (Graphics, Bigarray, Num, LablTk)

Глава 35 Библиотека dynlink: динамическая загрузка и компоновка объектных файлов

Библиотека dynlink поддерживает безопасную динамическую загрузку и компоновку объектных файлов байткода (.cmo и .cma файлы) в работающей программе байткода или нативных плагинов (обычно .cmxs файлы) в работающей нативной программе. Безопасность типов обеспечивается ограничением набора модулей из работающей программы, к которым может получить доступ загруженный объектный файл, и проверкой, что работающая программа и загруженный объектный файл были скомпилированы с использованием одних и тех же интерфейсов для этих модулей. В нативном коде также есть некоторые проверки совместимости реализаций (чтобы избежать ошибок при оптимизациях между модулями); может быть полезно скрывать файлы .cmx при построении нативных плагинов, чтобы они оставались независимыми от реализации модулей в основной программе.

Программы, использующие библиотеку dynlink, просто должны включить каталог библиотеки dynlink с помощью -I +dynlink и связать dynlink.cma или dynlink.cmxa со своими объектными файлами и другими библиотеками.

Примечание: для того, чтобы динамически загруженные модули имели доступ ко всем библиотекам, видимым основной программе (а не только к частям этих библиотек, которые фактически используются в основной программе), программы, использующие библиотеку dynlink, должны быть скомпонованы с помощью -linkall.

  • Модуль Dynlink: динамическая загрузка объектных файлов байткода
« Библиотека потоковНедавно удалённые или перемещённые библиотеки (Graphics, Bigarray, Num, LablTk) »
Авторское право © 2024 Institut National de Recherche en Informatique et en Automatique

© 1995-2024 INRIA.
https://ocaml.org/manual/5.2/libdynlink.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API