【.NET】线程同步

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/It_sharp/article/details/83475787

问题

多个线程同时访问同一资源时,必然会出现冲突问题?比如一个线程尝试从一个文件中读取数据,而另一个线程则尝试在同一个文件中修改数据。这样子,数据可能变得不一致

解决方法

通常只让一个线程彻底访问完成其任务后,再运行下一个线程
三种方法实现线程同步 Lock、Monitor、Mutex等

代码

//FileLogger.cs
static readonly object WriteLock = new object( );
public void Log(string strText)
{
	if(m_strFile == "") return;
	lock(WriteLock)
	{
		WriteLone(strText);
	}
}

猜你喜欢

转载自blog.csdn.net/It_sharp/article/details/83475787