31 lines
846 B
C#
31 lines
846 B
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Linq;
|
|||
|
using System.Text;
|
|||
|
|
|||
|
namespace TokenBucketLib
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// 令牌桶工厂,用来生成令牌桶
|
|||
|
/// </summary>
|
|||
|
public static class TokenBucketFactory
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// 制造一个令牌桶
|
|||
|
/// </summary>
|
|||
|
/// <param name="ir">令牌投放速度</param>
|
|||
|
/// <param name="bs">令牌上限</param>
|
|||
|
/// <param name="ip">初始令牌数</param>
|
|||
|
/// <returns>一个令牌桶</returns>
|
|||
|
public static TokenBucket Buid(int ir, int bs, int ip)
|
|||
|
{
|
|||
|
return new TokenBucket(ir, bs, ip > bs ? bs : ip);
|
|||
|
}
|
|||
|
|
|||
|
public static QueueTokenBucket BuidQueueTokenBucket()
|
|||
|
{
|
|||
|
return new QueueTokenBucket();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|