Wpf 我的背景工作方法有什么问题

Wpf 我的背景工作方法有什么问题,wpf,multithreading,backgroundworker,Wpf,Multithreading,Backgroundworker,我试图让一个后台工作进程在wpf应用程序中工作。它创建2个文件,然后崩溃 BackgroundWorker worker = new BackgroundWorker(); worker.DoWork += delegate(object s, DoWorkEventArgs args) { CreateFile(i.ToString())

我试图让一个后台工作进程在wpf应用程序中工作。它创建2个文件,然后崩溃

   BackgroundWorker worker = new BackgroundWorker();
                        worker.DoWork += delegate(object s, DoWorkEventArgs args)
                        {
                            CreateFile(i.ToString());
                        };
                        worker.RunWorkerAsync();


private void CreateFile(string fileName)
    {
        string path = string.Format(@"{0}\{1}.txt", directory, fileName);
        using (StreamWriter sw = new StreamWriter(path))
        {
            sw.WriteLine(fileName);
        }
    }
我得到这个错误“ 无法对打开了用户映射节的文件执行请求的操作。“我做错了什么?”


任何帮助都很好

另一个进程打开了文件,例如,防病毒程序或写字板。您可以使用查看它是哪个流程。

认真回答?几乎所有的东西,“我”是什么?您显示的内容只会创建一个文件。是否有多个对RunWorkerAsync()的调用?你能解释一下你想做什么吗。你想在全局层面上实现什么?我缺少一些上下文-例如如何创建2个文件/dir变量的值。。欢迎编写更多代码。2.您能否尝试在崩溃发生时识别文件路径,并使用ProcExp查看哪些进程在崩溃时持有该文件的句柄?您好,很抱歉,是的,这是我的代码的简短版本。我基本上有一个for循环,里面有后台工作代码。我使用循环来创建新文件,使用CreateFile。这是一个简单的示例,但我只是想了解它是如何工作的。非常感谢。