代理的简单使用

 static void Main(string[] args)
        {
            //DateTime dt = DateTime.Now;
            //RemoteObject.MyObject app = new RemoteObject.MyObject();
            //Console.WriteLine(app.ALongTimeMethod(1, 2, 1000));
            //Method();
            //Console.WriteLine("用了" + ((TimeSpan)(DateTime.Now - dt)).TotalSeconds + "秒");
            //Console.ReadLine();

            DateTime dt = DateTime.Now;
            RemoteObject.MyObject app = new RemoteObject.MyObject();
            MyDelegate md = new MyDelegate(app.ALongTimeMethod);
            IAsyncResult Iar = md.BeginInvoke(1, 2, 1000, null, null);
            Method();
            if (!Iar.IsCompleted)
            {
                Console.WriteLine("没有结束");
                Iar.AsyncWaitHandle.WaitOne();
            }
            else
            {
                Console.WriteLine("结果是" + md.EndInvoke(Iar));
            }
            Console.WriteLine("用了" + ((TimeSpan)(DateTime.Now - dt)).TotalSeconds + "秒");
            Console.ReadLine();
        }

        private delegate int MyDelegate(int a, int b, int time);
        private static void Method()
        {
            Console.WriteLine("主线程方法开始");
            System.Threading.Thread.Sleep(3000);
            Console.WriteLine("主线程方法结束");
        }
时间: 2024-10-07 12:11:13

代理的简单使用的相关文章

oc中代理的简单运用

今天和以为老同学聊了一些,深有感触,看它传值都是用代理写的,自己平时都是用block,通知之类的,基本不用代理,想想代理,感觉自己也有些模棱两可,所以动手写了一个代理简单运用的demo,写完之后思考了一番,在与block和通知做一些比较,豁然开朗,感觉自己在以后又多了一大助力. 我一贯的态度,做项目的思路源于基础,我不奢求自己什么都会,只要求自己学的都能基本掌握原理,从而达到心到,手到,运用自如. 关于代理之类的官方解释,我在此就不说了,不懂得,自己去查阅一些文档吧,这里只写它的原理和用法. 代

学习Nginx反向代理实现简单负载均衡

 Nginx proxy作为Nginx的重要功能,使用nginx proxy基本可以实现一个完整的7层负载均衡.其特色如下:1.功能强大,性能卓越,运行稳定.2.配置简单灵活. Nginx proxy作为Nginx的重要功能,使用nginx proxy基本可以实现一个完整的7层负载均衡. 其特色如下: 1.功能强大,性能卓越,运行稳定. 2.配置简单灵活. 3.能够自动剔除工作不正常的后端服务器. 4.上传文件使用异步模式. 5.支持多种分配策略,可以分配权重,分配方式灵活 配置环境: 三台

【源码】谷歌代理~WPF简单小软件-2015-10-15首发 (2016-03-01已更新源)

蛋疼,昨天把代理去了后才发现,原来咱们连谷歌应用都访问不了,,,用别人的总觉得不怎么安全,然后今天早上就编了个小软件干掉他这限制==>  GoogleProxy.exe [主要目的:为了能在线安装谷歌应用,其他辅助] 软件:http://pan.baidu.com/s/1gdxylNX (源码见下面) 链接:http://pan.baidu.com/s/1jG2bPpO 密码:huvu 如果只是想谷歌搜索: http://google.bigblog.cn/ 更新记录 2016-03-01 07

代理模式简单说明

如果想从B界面传值给A界面,不包含从B界面push到A界面,简单思路如下: 1.在要传值的界面建立代理,在这里,B需要传值,在B中建立协议: B.h @protocol passValue <NSObject> - (void)setPassValue:(NSString *)str; @end 2.在B界面设置一个代理属性: @property (nonatomic,assign) id<passValue> delegate; 3.在需要传值的地方,比如点击事件中: [self

JDK动态代理的简单理解

转载:http://www.cnblogs.com/luotaoyeah/p/3778183.html 动态代理 代理模式是 Java 中的常用设计模式,代理类通过调用被代理类的相关方法,提供预处理.过滤.事后处理等服务,动态代理及通过反射机制动态实现代理机制.JDK 中的 java.lang.reflect.Proxy 类可以用来实现动态代理. 首先,准备一个简单的接口和实现类 /** * 接口 IHello.java */ public interface IHello { void hel

JDK动态代理实现简单AOP--转

JDK 动态代理是 java 反射的一个重要特性.它在某种方面为 java 提供了动态性的特性,给应用带来了无限的空间.大名鼎鼎的 Hessian . Spring AOP 基于动态代理实现.本文将简单的介绍 JDK 动态代理使用. 关于代理模式 代理模式是非常常用的一种设计模式,在我们的应用中经常被使用.一般场景是,我们有一个现成的类,它的功能比较的完善了,但是还是存在某些欠缺,这个时候我们需要去扩展一些新的功能,但又不想去重造轮子,这个时候可以使用代理类来替代原来的目标类,通过组合的模式,增

IOS 代理的简单实现

原文 http://www.cnblogs.com/lovekarri/archive/2012/03/04/2379197.html 昨天做了一个demo,用到了简单代理. delegate是ios编程的一种设计模式.我们可以用这个设计模式来让单继承的objective-c类表现出它父类之外类的特征.昨天这个代理实现如下: 类GifView是继承自UIView的,它加载在RootViewController上来通过一个Timer播放动画.同时,RootViewController需要知道Tim

ssh-agent代理的简单用法

前言 在ansible的官方文档中,提到了强烈推荐用ssh-agent来管理密钥 究竟ssh-agent是什么,它有什么用法呢,下面来一探究竟. ssh-agent是什么?用处是什么? ssh-agent是什么? ssh-agent是一个代理程序,它能帮助我们管理我们的私钥. ssh-agent在哪里用得到? 当我们的主机有多个密钥对(例如:root用户生成了一对公钥私钥对,hmk用户生成了另外一对公钥私钥对),我们连接到其他不同的多台主机时,可能用的认证用户不一样,这时候需要我们手动指定使用哪

代理设计模式简单格式(备忘)

A控制器充当B控制器的代理:(B页面的数据反传给A页面进行数据的更新,一般A跳转到B的这种情况下需要使用代理方法) B控制器.h文件中的代码如下: #import <UIKit/UIKit.h> @protocol SearchDestinationDelegate <NSObject> - (void)searchDestinationWithLocation:(CLLocationCoordinate2D)secrchLocationCoordinate; @end @inte

静态代理与动态代理的简单使用

代理模式(Proxy Pattern)是一种比较常见的设计模式,在很多场合都会被用到. 所谓代理指的是让其他的类代替完成一些任务(执行一些方法等),在软件开发中代理模式具有非常重要的作用,面向切面编程(AOP)便是基于代理模式运作的编程范式. 下面介绍一下其中的静态代理与动态代理,基于Java语言. 静态代理: 首先由一个HelloWorld接口,其中有一个方法,print public interface HelloWorld { void print(); } 接下来是实现了HelloWor