【发布时间】:2014-10-06 17:59:57
【问题描述】:
好的,在多线程系统中有两种方法可以将文本写入文件
哪个更好
第一种情况:有一个静态对象来锁定streamwriter并进行操作
第二种情况有:
TextWriter twWaitingToBeFetched;
twWaitingToBeFetched = TextWriter.Synchronized(new StreamWriter(stringPath, true));
twWaitingToBeFetched.WriteLine(srNewComposedUrl);
twWaitingToBeFetched.Flush();
现在你认为哪个更好,为什么?
我需要多个线程任务来编写相同的流
C# .net 4.5 - WPF 应用程序
【问题讨论】:
-
您是否需要多个线程使用同一个流写入文件?或者多个线程可以使用自己的流到同一个文件来追加内容?
-
@Frode 我需要多个线程来写同一个流
-
两者几乎相同,只是锁定字段不应该是静态的(如果
twWaitingToBeFetched是实例字段)。静态锁会同步两个不相关的实例。
标签: c# wpf multithreading streamwriter textwriter