您的位置:首页 > 编程语言

设计模式代码示例

2010-12-21 14:52 417 查看
代码

单例模式(线程) 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();
}
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: