12

我正在结合使用 streamwriter 和后台工作人员进行日志记录。

因此,我有

System::Void
MyUI::execBWorker_DoWork(System::Object^  sender, System::ComponentModel::DoWorkEventArgs^  e) {

String^ outputPath = _clr::Settings::ApplicationLogPath("_log.txt", true, false);
logfile_ = gcnew StreamWriter(outputPath,true);

DoStuff();
logfile_->Close();
}

DoStuff() 方法中的事物引发了 Progress 事件。

System::Void
MyUI::execBWorker_ProgressChanged(System::Object^  sender, System::ComponentModel::ProgressChangedEventArgs^  e) {
logfile_->WriteLine("something");
}

我觉得这真的很香。我怎样才能让它变得更好,或者至少我怎样才能检查日志文件没有被关闭?有很多消息,所以我担心连续打开和关闭日志文件。

4

1 回答 1

24

如果StreamWriter关闭,BaseStream属性将返回null

于 2012-07-04T06:55:02.270 回答