• 设计模式代码示例


    代码
    单例模式(线程)
     using System;
    using System.Collections;
    using System.Threading;
    //
    //
    // Generated by StarUML(tm) C# Add-In
    //
    // @ Project : 设计模式
    // @ File Name : LoadBalancer.cs
    // @ Date : 2010/12/21
    // @ Author :
    //
    //


    namespace LoadBalancer{
    public class LoadBalancer {
    private static LoadBalancer balancer ;
    private ArrayList servers = new ArrayList() ;

    private Random random = new Random();

    protected LoadBalancer()
    {
    servers.Add(
    "Server1");
    servers.Add(
    "Server2");
    servers.Add(
    "Server3");
    servers.Add(
    "server4");
    servers.Add(
    "server5");
    }



    public static LoadBalancer GetLoadBalancer()
    {
    if ( balancer == null)
    {
    Mutex mutex
    = new Mutex();
    mutex.WaitOne();
    if (balancer == null)
    {
    balancer
    = new LoadBalancer();

    }
    mutex.Close();
    }
    return balancer;
    }

    public string Server
    {
    get
    {
    int r = random.Next(servers.Count);
    return servers[r].ToString();
    }
    }

    }
    }

  • 相关阅读:
    085_JS Promise
    086_Service Cloud
    081_Introducing trigger handler class
    080_Dataloader.io
    Veeva_001常见问题总结
    UML 组成 1
    078_Sublime HaoIDE 搭建 Lightning Aura环境
    075_解密加密
    074_Wrapper_Class
    073_SFDC Limit
  • 原文地址:https://www.cnblogs.com/tianjinquan/p/1912708.html
Copyright © 2020-2023  润新知