日志log2
 public class LoggerHelper2
    {
        private static ConcurrentQueue<string> CqMsg = null;
        private static string logFilePath = @"D:\log\" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt";
        static LoggerHelper2()
        {
            CqMsg = new ConcurrentQueue<string>();
            //存入日志
            Run();
        }
        public static void WriteLog(string strLog)
        {
            if (string.IsNullOrEmpty(strLog))
            {
                return;
            }
            strLog = strLog.Replace("\n", "\r\n");
            if (!File.Exists(logFilePath))
            {
                File.Create(logFilePath).Dispose();
            }
            using (StreamWriter sw = File.AppendText(logFilePath))
            {
                sw.WriteLine("[" + DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss") + "]  " + strLog);
            }
        }
        public static void Run()
        {
            Task.Run(() =>
            {
                while (true)
                {
                    string tmsg = string.Empty;
                    )
                    {
                        CqMsg.TryDequeue(out tmsg);
                    }
                    if (!String.IsNullOrEmpty(tmsg))
                    {
                        WriteLog(tmsg);
                    }
                    )
                    {
                        Thread.Sleep();
                    }
                }
            });
        }
        public static void WriteLogAsync(string strlog)
        {
            CqMsg.Enqueue(strlog);
        }
        public static void WriteLogAsync(string filepath, string strlog)
        {
            if (string.IsNullOrEmpty(filepath))
            {
                WriteLogAsync(strlog);
            }
            else
            {
                logFilePath = filepath;
                CqMsg.Enqueue(strlog);
            }
        }
    }
使用
  Parallel.For(, , index =>
            {
                string msg1 = "test" + index.ToString();
                LoggerHelper2.WriteLogAsync(msg1);
            });
日志log2的更多相关文章
- 自己编写的 C++ 超轻量级日志类
		[自己编写的 C++ 超轻量级日志类(兼容vc++6.0.vs2010.vs2015)] 先来看效果: [测试文件:test.cpp] /* 作者:闫文山 时间:2017/07/02 介绍: 本日志类 ... 
- logging 文件日志
		1. 例子 import logging logging.basicConfig(filename='log.txt', #文件名 level=logging.DEBUG, #级别 format=u' ... 
- InnoDB源码分析--事务日志(二)
		原创文章,转载请标明原文链接:http://www.cnblogs.com/wingsless/p/5708992.html 昨天写了有关事务日志的一些基本点(http://www.cnblogs.c ... 
- 以HTML为表现的日志记录组件
		日志搬家:http://www.loogn.net/blog/Article.aspx?id=21 关于日志记录,如果你不想随用随写,又不想用log4net的话,也许你可以了解一下这个! 我也是个很懒 ... 
- 日志挖掘Logmnr
		日志挖掘 9.1 日志中数据用途 所有对用户数据以及数据字典的改变全部被保存在联机日志中.当然nologging,insert/*+append+/情况比较特殊除外,因此归档日志可以用来做数据库的恢复 ... 
- log4net基本日志使用笔记[windows application]
		Ref: http://www.cnblogs.com/wangsaiming/archive/2013/01/11/2856253.html http://www.cnblogs.com/zhouf ... 
- BIND9详解之日志篇
		在默认情况下,BIND把日志消息写到/var/log/messages文件中,而这些日志消息是非常少的,主要就是启动,关闭的日志记录和一些严重错误的消息,所以要详细记录服务器的运行状况,需要自己配置服 ... 
- 最小日志量的insert操作
		--1.实验环境 SQL> conn scott/tiger Connected to Oracle Database 11g Enterprise Edition Release 11.2.0 ... 
- 基于java.util.logging实现轻量级日志记录库(增加根据当前类class初始化,修复线程池模型(javaEE)下的堆栈轨迹顺序与当前调用方法不一致问题)
		前言: 本章介绍自己写的基于java.util.logging的轻量级日志记录库(baseLog). 该版本的日志记录库犹如其名,baseLog,是个实现日志记录基本功能的小库,适合小型项目使用,方便 ... 
随机推荐
- solr schema.xml文档节点配置
			首先,讲解一下/usr/local/solr/collection1/conf/schema.xml的配置,此文档功能类似于配置索引数据库. Field:类似于数据库字段的属性(此文统一使用用“字段” ... 
- Object obj=new Object()的内存引用
			Object obj=new Object(); 一句很简单的代码,但是这里却设计Java栈,Java堆,java方法去三个最重要的内存区域之间的关联. 假设这句代码出现在方法体中. 1.Object ... 
- [BZOJ1127][POI2008] KUP子矩阵
			Description 给一个n*n的地图,每个格子有一个价格,找一个矩形区域,使其价格总和位于[k,2k] Input 输入k n(n<2000)和一个n*n的地图 Output 输出矩形的左 ... 
- bzoj1927最小费用最大流
			其实本来打算做最小费用最大流的题目前先来点模板题的,,,结果看到这道题二话不说(之前打太多了)敲了一个dinic,快写完了发现不对 我当时就这表情→ =_=你TM逗我 刚要删突然感觉dinic的模 ... 
- StringBuilder(字符串拼接类)
			StringBuilder是在using System.Text命名空间下的一个成员. 在做字符串拼接的时候,因为字符串是引用类型,新的字符串是会再内存中创建的,所以用+号拼接字符串是比较耗效率的. ... 
- SubVersion Ubuntu
			UbuntuサーバにSubversionを入れる Linux, 開発ツール | Ubuntuサーバが無事に動いたので.続いてSubversionを入れてみる. こんな感じの環境を考える. Apa ... 
- 异常处理_Maven之web项目java.lang.LinkageError
			浏览器运行项目异常如下: HTTP Status 500 - type Exception report message description The server encountered an i ... 
- [LeetCode] All solution
			比较全的leetcode答案集合: kamyu104/LeetCode grandyang 
- Mvc form提交
			在项目开发中,我们离不开表单提交,本篇主要记录mvc的Ajax.BeginForm提交方式. 需要用到的js @Url.Script("~/Content/Scripts/jquer ... 
- 安卓初級教程(5):TabHost的思考
			package com.myhost; import android.os.Bundle; import android.view.LayoutInflater; import android.wid ... 
