单件模式里保证一个类只能有一个实例那如果同一个时刻,有不同的客户端要调用这个类里的方法是一个个执行还是他们可以同时执行呢?换句话说我想知道在c#里,实际例化一个类后,类的方法是通过什么机制来实现的

解决方案 »

  1.   

    singleton模式并不能够保证在多线程的时候也是正确的。
    在多线程的时候应该使用Double-Checked Locking模式。或者静态初始化。具体参见:http://terrylee.cnblogs.com/archive/2005/12/09/293509.html
      

  2.   

    我想知道外界调用一个函数,然后这个函数执行相应的代码具体是怎么实现的以前看过记得是类里的函数是存了一个链表在CLR中我也不是记得好清楚了麻烦给讲讲
      

  3.   

    我想知道外界调用一个函数,然后这个函数执行相应的代码具体是怎么实现的以前看过记得是类里的函数是存了一个链表在CLR中我也不是记得好清楚了麻烦给讲讲----------------------
    楼主说的意思,偶不明白……
    能不能说清楚些?
      

  4.   

    如果你的方法里面没有使用类成员或者其它资源,是没有问题的;否则需要加锁:
    在方法里面最前面加:lock(this);