首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >强制退出ocaml异步程序

强制退出ocaml异步程序
EN

Stack Overflow用户
提问于 2017-07-25 23:07:37
回答 1查看 134关注 0票数 1

我想实现以下行为:

代码语言:javascript
复制
let x = 
    try 
       do_some_computation ()
    with
    | Some_error -> exit_my_program ()
in
...

当然,我可以引发一个异常,如下所示:

代码语言:javascript
复制
let exit_my_program () = failwith "...."

但是,我想要这样的东西:

代码语言:javascript
复制
let exit_my_program () =
    Print.printf "some error message\n";
    exit 1

我遇到的问题是,exit 1的类型是'a Deferred.t,它不会进行类型检查。我想知道是否有一个类型为'a的出口函数可以在这个上下文中使用,或者更广泛地说,一个可以强制延迟的函数。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-26 00:19:16

函数Pervasives.exit的类型为int -> 'a。我不知道异步,所以我不知道使用这个功能是不是一个好的计划。很容易相信,如果你想让事情慢慢结束,这可能不是一个好计划。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45307184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档