C# Thread、lock
2024-10-09 06:28:51
class Program
{
private static readonly object obj = new object(); static void Main(string[] args)
{
Thread th1 = new Thread(TestLock);
Thread th2 = new Thread(TestLock1);
th1.IsBackground = true;
th2.IsBackground = true;
th2.Start();
th1.Start(); #region 按任意键继续 Console.Write("按任意键继续!");
//此代码会提示用户按任意键,然后在用户按键前暂停程序。
Console.ReadKey(true); #endregion 按任意键继续
} private static void TestLock()
{
lock (obj)
{
for (int i = ; i < ; i++)
{
var message = i.ToString();
string logFileName = @"F:\Log\" + DateTime.Now.ToString("yyyyMMdd") + "Log" + ".txt";
StreamWriter sr = new StreamWriter(logFileName, true);
try
{
sr.WriteLine(message);
}
catch
{
Console.WriteLine(message);
}
finally
{
sr.Close();
}
}
}
} private static void TestLock1()
{
lock (obj)
{
for (int i = ; i < ; i++)
{
var message = "Count:" + i.ToString();
string logFileName = @"F:\Log\" + DateTime.Now.ToString("yyyyMMdd") + "Log" + ".txt";
StreamWriter sr = new StreamWriter(logFileName, true);
try
{
sr.WriteLine(message);
}
catch
{
Console.WriteLine(message);
}
finally
{
sr.Close();
}
}
}
} }
最新文章
- [Erlang 0103] Erlang Resources 资讯小站
- oracle 错误代码大全
- Digital calculation
- Failure is not fatal, but failure to change might be.
- Intel Edison
- mybatis(1):入坑篇
- inter
- C语言函数指针(转载)
- sql server 2008 (3)
- Aix_bugzilla
- Windows7下安装pyspark
- Codeforces #541 (Div2) - F. Asya And Kittens(并查集+链表)
- idea 模板注释设置
- elk每日清除30天索引脚本
- 测试工具安装(JMeter,Postman)
- 【转】AJAX 跨域请求 - JSONP获取JSON数据
- Perf -- Linux下的系统性能调优工具,第 1 部分【转】
- BZOJ.2816.[ZJOI2012]网络(LCT)
- html5-绝对路径/相对路径
- halcon+csharp多图像拼接实现