예제 #1
0
        public void MultiThreadsTest()
        {
            List <long>      idList  = new List <long>();
            List <IAsyncJob> jobList = new List <IAsyncJob>();

            for (int i = 0; i < 10; i++)
            {
                jobList.Add(Ajob.Once(job =>
                {
                    Assert.NotNull(RedisManager.Context);
                    idList.Add(RedisManager.Context.Id);
                    RedisManager.ResetContext();
                }));
            }
            Ajob.WaitAll(jobList);
            Assert.Equal(10, idList.Count);
            Assert.True(idList.Sum() >= 55);
            Assert.True(RedisManager.Context.Id >= 11);
            RedisManager.ResetContext();
        }
예제 #2
0
 /// <summary>
 /// 初始化一个 <see cref="LoggerBase"/> 类的新实例。
 /// </summary>
 public LoggerBase()
 {
     this._ajob = Ajob.Loop(AsyncWrite, TimeSpan.FromSeconds(1));
 }