首页 > 其他 > 详细

应用域这相互调用

时间:2014-03-06 11:38:04      阅读:420      评论:0      收藏:0      [点我收藏+]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
//第一个exe 应用 域
 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
 
namespace console
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                for (int i = ; i < 10; i++)
                {
                    TestStatic.count *= i;
                    Console.WriteLine("我最喜欢hello world现在的值是:" + TestStatic.count);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("错误消息是:" + e.Message);
            }
        }
    }
 
    public class TestStatic:MarshalByRefObject,ICollection
    {
        public static int count = 1;
       
 
        public void CopyTo(Array array, int index)
        {
            throw new NotImplementedException();
        }
 
        public int Count
        {
            get {
                count = count * 5;
                return count;
            }
        }
 
        public bool IsSynchronized
        {
            get { throw new NotImplementedException(); }
        }
 
        public object SyncRoot
        {
            get { throw new NotImplementedException(); }
        }
 
        public IEnumerator GetEnumerator()
        {
            throw new NotImplementedException();
        }
    }
}
 
 
//在另一个执行上面一个中得域中得类。来达到相互通讯
 AppDomainSetup info2 = new AppDomainSetup();
            info2.LoaderOptimization = LoaderOptimization.SingleDomain;
            AppDomain domain2 = AppDomain.CreateDomain("console", null, info2);
            ObjectHandle objHandle = domain2.CreateInstance("console", "console.TestStatic");
            domain2.ExecuteAssembly(@"console.exe");
            ICollection obj = objHandle.Unwrap() as ICollection;
            int i = obj.Count;
           
            Console.WriteLine(i);
 
            AppDomain.Unload(domain2);

应用域这相互调用,布布扣,bubuko.com

应用域这相互调用

原文:http://www.cnblogs.com/xuehaiyiye/p/3583524.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!