将R.NET与多个AppDomain一起使用

时间:2015-05-31 17:36:37

标签: .net r.net

是否可以使用多个AppDomains中的R.NET?在documentation的末尾有一个对多个应用域"的引用,但没有进一步的信息。

场景是我拥有的是一个基本上是交易系统的IDE。每次运行交易系统时,都会创建一个新的AppDomain供其运行,以便可以卸载程序集,并且可以在以后修改和重新编译代码。用户is reporting,当他尝试从系统使用R.NET时,它第一次运行时工作,但之后它会挂起,他必须重新启动开发环境。

有没有办法正确清理R.NET连接,以便以后可以在不同的AppDomain中创建一个新的连接,或者其他一些方式来处理它?<​​/ p>

1 个答案:

答案 0 :(得分:0)

问题的根源在于.NET世界中的AppDomains之间存在冲突(可能是因为您的交易平台将它们用作隔离的沙箱),并且每个进程只能有一个R引擎,只能初始化一次。之前出现过此问题 - 有关更多背景信息,请参阅this feature request

R.NET可以解决跨域体操问题,但这很复杂,可能会破坏app域隔离的目的。据我所知,每个进程一个R引擎是不可妥协的事情。