我想在OCaml中使用线程模块,但我无法打开它.例如,使用Unix我必须使用:#load "unix.cma";;
或者#load "graphics.cma";;
用于图形模块.
但是当我尝试#load "thread.cma"
它时会返回错误.
我该如何加载它?
相反到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;;
更不用说访问其他库变得更容易了.