多线程程序写日志时遇到加锁的问题
来源:互联网 发布:收购淘宝店铺 编辑:程序博客网 时间:2024/04/30 04:22
/// <summary>
/// 写日志时加锁
/// </summary>
private static object m_Lock = new object();
/// <summary>
/// 写日志文件的接口函数,此函数只向指定的文件写入字符串
/// </summary>
/// <param name="DestFileName"></param>
/// <param name="fmt"></param>
/// <returns></returns>
public static int TP_WriteAppLogFileEx(string DestFileName, string fmt)
{
string strLogFile = System.Environment.CurrentDirectory+"\\Log\\"+DateTime.Now.ToString("yyyyMMdd")+".log";
if (strLogFile != DestFileName)
{
DestFileName = strLogFile;
}
int iWriteAppLogFile = 0;
lock (m_Lock)
{
iWriteAppLogFile=TP_WriteAppLogFile(DestFileName, fmt);
}
return iWriteAppLogFile;
}
public static int TP_WriteAppLogFile(string DestFileName, string fmt)
{
try
{
FileInfo file = new FileInfo(DestFileName);
if (!file.Exists)
{
file.Create();
}
//定位到文件尾
StreamWriter stream = file.AppendText();
//写当前的时间
stream.Write(DateTime.Now.ToString("HH:mm:ss fff "));
//写用户传过来的字符串
stream.WriteLine(fmt);
//最后记着要关了它
stream.Close();
}
catch (Exception e)
{
}
return 0;
}
经过加锁处理后,多线程写日志打架的问题得到了解决。
- 多线程程序写日志时遇到加锁的问题
- 写判断素数程序时遇到的小问题
- 使用python写程序时遇到的几个小问题
- eclipse在编写Java程序时遇到的问题
- python3写爬虫程序时,遇到的问题及解决方法
- 写小程序遇到的问题
- 写程序都会遇到的问题, DPI
- 今天写程序遇到的一些问题
- 多线程 变量 加锁问题
- 多线程程序何时需要加锁
- 多线程遇到的问题
- 在写JAVA程序的时候遇到的问题
- 使用netbeans写struts程序遇到的问题。。。
- 写程序,遇到比较难的问题了该咋办?
- 写服务器程序,今天遇到的诡异问题
- 自写webrtc程序中遇到的问题---------------------持续更新----------
- 对于多线程访问同一变量是否需要加锁的问题
- 编写该多线程下载程序遇到的问题
- 关于Android中传递数据的一些讨论
- 善用Android预定义样式
- 网页抓取hao123手机号码归属地的例子
- 乔布斯:Flash漏洞多耗电高不支持触屏
- VI小暖
- 多线程程序写日志时遇到加锁的问题
- 查询手机归属地
- 控制台javax.xml.ws.WebServiceException: java.net.UnknownHostException解决
- Ubuntu 下 安装 RabbitVCS 教程
- CSS精灵1
- RzPageControl(pagecontrol)实现多标签的动态添加,切换,关闭
- BOOST简介-Intrusive_ptr
- 梨花飘落的瞬间
- 模态对话框(window.showModalDialog),表单内容的提交、刷新父窗口的问题