我正在使用流媒体与后台工作人员进行日志记录.
因此,我有
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"); }
我觉得这真的很有味道.我怎么可以做得更好,或者至少如何检查日志文件还没有被关闭?有很多消息,所以我担心连续打开和关闭日志文件.