Как использовать потоковый модуль в OCaml - PullRequest
0 голосов
/ 15 декабря 2018

Я хочу использовать модуль потоков в OCaml, но не могу его открыть.Например, в Unix я должен использовать: #load "unix.cma";; или #load "graphics.cma";; для графического модуля.

Но когда я пытаюсь #load "thread.cma", он возвращает ошибку.

Как я могу загрузить его?

1 Ответ

0 голосов
/ 15 декабря 2018

В отличие от unix.cma или graphics.cma, threads.cma (с окончательным s: Thread является только одним из модулей, содержащихся в библиотеке threads.cma), не находится непосредственно в каталоге стандартной библиотеки OCaml, но в подкаталоге threads, так что вам нужно добавить его в путь поиска интерпретатора.Более того, threads.cma зависит от unix.cma, так что вам также придется его загрузить.В целом, следующая последовательность директив должна позволять загружать threads.cma в интерпретатор (+ указывает, что threads является подкаталогом стандартной библиотеки).

#directory "+threads";;
#load "unix.cma";;
#load "threads.cma";;

Примечаниечто если вы устанавливаете findlib и #use "topfind";; (директива, которая может быть помещена в ваш файл ~/.ocamlinit), то использование потоков в интерпретаторе - это всего лишь вопрос ввода #thread;;, а неупомянуть тот факт, что доступ к другим библиотекам также становится намного проще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...