是否有任何方法可以同步执行用Lwt库创建的线程?
具体地说,我正在尝试向服务器运行一系列post请求,这些请求计算一些值并返回结果。
根据对这个问题的回答:
如何在OCaml中发出简单的GET请求?
我可以使用低级方法(套接字(或使用Cohttp库。低级别方法的优点是直接明了,但我宁愿坚持Cohttp(不需要读/写循环等(。不幸的是,我对Lwt完全陌生,基于:https://mirage.io/wiki/tutorial-lwt我知道从a t
到a
得到结果的唯一方法是运行Lwt_main.run
,它被认为是在顶级调用的,这对我来说不是一个选项
TL:博士
有什么方法可以从得到结果吗
Client.get (Uri.of_string "http://localhost:8080/res")
不调用Lwt_main.run
,或者为每个请求(代码内部(调用Lwt_main.run
不是个坏主意吗?
您可以在程序内部深处调用Lwt_main.run
,前提是该调用没有嵌套在对Lwt_main.run
的外部调用中。听起来它不会嵌套在您的案例中,所以您可以在提出请求的地方调用它。