小弟在看案例时遇到有关线程的问题,请问神恶魔时候使用invoke,一般怎么使用privatevoidbutton2_Click(objectsender,EventArgse) 小弟在看案例时遇到有关线程的问题,请问神恶魔时候使用invoke,一
小弟在看案例时遇到有关线程的问题,请问神恶魔时候使用invoke,一般怎么使用privatevoidbutton2_Click(objectsender,EventArgse) 小弟在看案例时遇到有关线程的问题,请问神恶魔时候使用invoke,一般怎么使用 privatevoidbutton2_Click(objectsender,EventArgse) { if(folderBrowserDialog1.ShowDialog()==DialogResult.OK) { textBox2.Text=folderBrowserDialog1.SelectedPath; str=textBox1.Text; //获取源文件的名称 str="\\"+str.Substring(str.LastIndexOf('\\')+1,str.Length-str.LastIndexOf('\\')-1); ThreadthdAddFile=newThread(newThreadStart(SetAddFile)); thdAddFile.Start(); } } publicdelegatevoidAddFile(); publicvoidSetAddFile() { AddFileRunAddFile=newAddFile(CopyFile);//此处有错误,想了好久不知道如何修改,请大家帮我看看 this.Invoke(RunAddFile); } publicvoidCopyFile(stringFormerFile,stringtoFile,intSectSize,ProgressBarprogressBar1)
2 个解决方案
#1
一般是其他线程访问ui资源需要使用,否则回报错。
#2
将操作线程的代码放在UI线程同步执行。