问题描述
我做一个邮件接收,点击开始收信的时候开始运行程序,当收完信件之后会掉用一个委托方法delegatevoiddgvDelegates(inti);privatevoidSetDgvDataSources(inti){if(lsv.InvokeRequired){Invoke(newdgvDelegates(SetDgvDataSources),newobject[]{i});}else{if(i==3){Operate(3);thread.Join(Etimes*1000);Operate(2);thread=newThread(newThreadStart(Inidata));thread.IsBackground=true;thread.Start();//开始}}}当线程等待时,我想点击页面的停止收信时。页面会假死。请问如何让页面等待时,我还可以点击停止收信时手动暂停线程。
解决方案
解决方案二:
这个不是线程问题啊。1.阻塞要在线程内,不要在线程外2.Invoke是用来在线程内同步UI进程,不在线程内或不操作UI不要使用
解决方案三:
那具体应该怎么写?要代码
时间: 2025-01-21 01:10:56