基本信息
源码名称:NLogger日志组件实例源码下载
源码大小:0.14M
文件格式:.rar
开发语言:C#
更新时间:2017-05-08
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559

本次赞助数额为: 2 元 
   源码介绍

NLogger特点:

一:不依赖于第三方插件和支持.net2.0

二:支持多线程高并发

三:支持读写双缓冲对列

四:自定义日志缓冲区大小

五:支持即时触发刷盘机制

六:先按日期再按文件大小RollingFile日志

七:支持日志存储位置,日志文件前缀的个性化定义

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Diagnostics;

namespace NLoggerTest
{
    class Program
    {
        static void Main(string[] args)
        {

            for (int count = 0; count < 10; count  )
            {
                Thread writeThread = new Thread(new ParameterizedThreadStart((para) =>
                {
                    Console.WriteLine(string.Format("开启线程{0}", para));
                    Stopwatch sw = new Stopwatch();
                    sw.Start();
                    for (int i = 0; i < 100000; i  )
                    {
                        NLogger.WriteLog("test_", string.Format("日志测试数据,序号:{0}", i.ToString()));
                    }
                    sw.Stop();
                    Console.WriteLine(string.Format("线程{0}写入日志结束,共用时{1}毫秒", para, sw.ElapsedMilliseconds));
                }));
                writeThread.IsBackground = true;
                writeThread.Start(count);
            }

            //Thread watchThread = new Thread(new ParameterizedThreadStart((para) =>
            //{
            //    DateTime startDT = DateTime.Now;

            //    while (NLogger.totalCount < 1000000)
            //    {
            //        DateTime sectionDt = DateTime.Now;
            //        TimeSpan ts = sectionDt - startDT;
            //        Console.WriteLine(string.Format("已用时{0}秒  已写入{1}条  写缓存{2}条  读缓存{3}条", (int)ts.TotalSeconds, NLogger.totalCount, NLogger.writeQueue.Count, NLogger.readQueue.Count));
            //        Thread.Sleep(1000);
            //    }
            //}));
            //watchThread.IsBackground = true;
            //watchThread.Start("");


            Console.ReadKey();
        }
    }
}

//new Thread(new ThreadStart(() =>
//{
//    Console.WriteLine(string.Format("开启线程{0}", count));
//    Stopwatch sw = new Stopwatch();
//    sw.Start();
//    for (int i = 0; i < 100000; i  )
//    {
//        NLogger.WriteLog("", string.Format("日志测试数据,序号:{0}", i.ToString()));
//    }
//    sw.Stop();
//    Console.WriteLine(string.Format("线程{0}写入日志结束,共用时{1}毫秒", count, sw.ElapsedMilliseconds));
//})).Start();