码迷,mamicode.com
首页 > 编程语言 > 详细

在项目中 将秒杀的时候锁定线程并将线程操作的ID写入txt文件中 (例子)

时间:2015-11-13 18:19:52      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:

锁定线程,进行单线程操作的时候,应使用以下操作方法锁定:
private readonly static Object thisLock = new Object();
 lock (thisLock)
{
...
}

 

技术分享
//
private void writeLog(Exception e)
        {
            FileStream fs = new FileStream("d:/ceshixiancheng.txt", FileMode.Append);
            
            //获得字节数组
            byte[] data = new UTF8Encoding().GetBytes(e.Message);
            //开始写入
            fs.Seek(0, SeekOrigin.End);
            fs.Write(data, 0, data.Length);
            var str = "\r\n";
            byte[] data1 = new UTF8Encoding().GetBytes(str);
            fs.Write(data1, 0, data1.Length);
            //清空缓冲区、关闭流
            fs.Flush();
            fs.Close();
        }

//使用时的调用:
  writeLog(new Exception("线程:" + Thread.CurrentThread.ManagedThreadId + "进来了!"));
View Code

以上为在做秒杀时 锁定线程,防止库存溢出的一个测试,测试是不是将线程锁定了,正常情况,线程锁定后,输出到txt文档的内容都是成对的,一进一出。如果不是则说明县城没有锁死.另外注意需要将txt文档的权限给了,否则会提示没有权限。

在项目中 将秒杀的时候锁定线程并将线程操作的ID写入txt文件中 (例子)

标签:

原文地址:http://www.cnblogs.com/WZH75171992/p/4962858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!