C#Singleton初始化

时间:2013-11-07 11:31:57

标签: c# singleton remoting

我创建了一个简单的C#远程服务器/客户端,其中包含复制现有VB6 ActiveX exe的视图。

客户端正确创建服务器激活的单例对象。只有一个属性 - 一个Count,对象才非常简单。运行的每个客户端都会创建对象并递增其Count。

简单 - 多个客户端各自使用相同的Simpleton对象,并且Count属性可以逐个递增。

但是......如果我让客户端打开一段时间 - 例如,几分钟 - 当客户端递增对象的Count属性时,突然Count属性已初始化为零 - 跨越所有客户。就像遥控器一样 尽管只有一次从服务器检索对象 - 当客户端打开时,对象已被销毁并重新创建。

任何想法,

由于 MM

1 个答案:

答案 0 :(得分:1)

我相信你需要覆盖远程对象的生命周期:

public override object InitializeLifetimeService()
    {
        return null; //remote object lease time forever
    }

将它放入继承MarshalByRefObject

的类中