我需要在几千个数据点上进行大约30次计算。计算在第三方库中完成。 每个调用都可以并行完成,所以我想把调用放到几个线程中。
我得到的问题是如果需要,如何正确终止呼叫。由于我无法访问大部分时间都在的lib,我无法以一种很好的方式退出该线程。
有什么建议吗?
感谢。
答案 0 :(得分:4)
如果第三方库是托管库,或者在托管代码中花费大部分CPU时间,则可以在单独的应用程序域中调用它,并在需要终止计算时对整个应用程序域进行核对。如果计算主要在非托管代码中,则将计算作为单独的过程运行并对整个过程进行核对。任何其他方法都是微妙危险的,因此是不可取的。