C# Sandboxer
public static string IsolateCallV1(PageContentHandler pHandler)
{
string name = Guid.NewGuid().ToString("N");
var domain = AppDomain.CreateDomain(name);
try
{
var proxy = (IAppEntry)domain.CreateInstanceAndUnwrap("AnfleCrawler.Common", "AnfleCrawler.Common.IsolateProxy");
string ret = (string)proxy.DoEntry(pHandler);
if (ret == null)
{
throw new InvalidOperationException("IsolateProxy");
}
return ret;
}
finally
{
//AppDomain不能即时卸载?不能在IDisposable中卸载? //App.LogInfo("IsolateCollect Unload {0}@{1}", domain.FriendlyName, AppDomain.CurrentDomain.FriendlyName);
//AppDomain.Unload(domain);
new JobTimer(state =>
{
try
{
var d = (AppDomain)state;
//if (d.IsFinalizingForUnload())
//{
// return;
//}
App.LogInfo("IsolateCollect Unload {0}", d.FriendlyName);
AppDomain.Unload(d);
}
catch (Exception ex)
{
App.LogError(ex, "IsolateCollect");
}
}, DateTime.Now.AddSeconds(20d)).Start(domain);
}
}
C# Sandboxer的更多相关文章
随机推荐
- OpenCV3编程入门笔记(5)重要章节小节及核心函数
- DialogFragment 自定义弹窗
layout文件 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:a ...
- 能源项目xml文件 -- springMVC-servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- 设置westorm自动代码提示
打开settings 然后在js文件下 打出co 按TAB键就出现了color了
- JavaScript表单编程
一. form的方式 1.直接定位方式 document.getElementById(id);</br> document.getElementsTagName(tagName);< ...
- placehold.it-在线图片生成器(转载)
做网站的时候 如果 有的产品等客户没有上传图片,可以用这个网站生成的图片 并配以文字进行图片的占位 以免造成页面的空挡或者页面错位等 原文地址:http://www.cnblogs.com/xumen ...
- 支持SQL Server数据库又支持MongoDB数据库的数据访问设计
网站整体架构建议采用工厂模式 分别包括:数据访问层DAL,数据访问接口层IDAL,工厂层DALFactory,业务逻辑层,显示层这样的架构方式 在WebConfig配置采用何种数据库的数据访问层 &l ...
- Andriod使用webview控件往APP里内嵌网页
转自博文:http://www.cnblogs.com/JuneZhang/p/4148542.html 1.布局文件片段:res-layout <WebView android:id=&quo ...
- 冲销交货单WS_REVERSE_GOODS_ISSUE
LOOP AT ITAB. AT END OF VBELN. PERFORM FRM_LOCK_DELIVERY(ZSDS0002) USING ITAB-VBELN. CALL FUNCTION ' ...
- 设置浏览器使用的dom模式为IE7
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>设置浏览器使用的dom模式为 ...