如何在卤化物运行时处理错误?

时间:2017-01-25 07:54:32

标签: halide

在Ahead of Time编译的情况下,如何让Halide抛出可以在更高调用堆栈处理的异常? 例如,当在不正确的位置访问输入图像时。

1 个答案:

答案 0 :(得分:2)

您可以调用halide_set_error_handler来安装自己的错误处理例程。 (或者,如果在支持弱链接的平台上,则直接覆盖halide_error。)您自己的错误处理程序可能会抛出异常。它不是Halide中测试最多的部分,但是我们打算允许错误例程抛出一个异常,该异常在调用堆栈上处理的次数比调用Halide编译的代码要高。应通过作用域析构函数释放所有内存分配等。