c# - 准备好从另一个用户界面接收消息的类
问题描述
我有一个将文件路径发送到类的表单,并且该类处理该文件。现在我想在表单上创建一个按钮,然后按下它,类强制停止处理文件。
namespace oarch.xmlSql
{
public partial class ReadXMl : Form
{
public ReadXML()
{
InitializeComponent();
}
}
.....
public buttiClick()
{
classes.ParseXlM(FileNameStr, System.Text.Encoding.GetEncoding(eCodepage),listBox1,listBox2, label6);
}
}
这是课程
namespace oarch.classes
{
public class ParseXlM
{
public static DataTable ParseXlM2(string dbfFile, System.Text.Encoding readingEncoding,ListBox olistBox1,ListBox elistBox, System.Windows.Forms.Label nlabel)
{
....
for (int i =0 ;;)
{
.....
here want to break the loop
}
}
}
解决方案
根据有限的描述,我看到您可以尝试取消令牌模式。Cancellation Token 可以只是共享的 bool 字段,指示应该停止对文件的处理。按下按钮后可以将 Token 设置为 true。并且您需要在处理文件的类中的某个循环中检查此令牌。如果令牌为假,则继续处理,如果令牌为真,则类应停止处理文件。
推荐阅读
- java - 我对移动优先 6.3 javax.net.ssl.SSLException 有疑问
- reactjs - VS Code Emmet 快捷键(tab 或任何其他键)不起作用,但从菜单中单击有效
- java - Apache Nutch 1.15 Solr 7.7.0 索引失败 DocValuesField 太大,必须 <= 32766
- python - GroupBy 在多个列上并应用移动功能
- python - 我无法在 Atom 文本编辑器中导入使用 Anaconda Prompt 安装的模块。Miniconda 是否会导致 pip 出现问题?
- javascript - 调试此 Google 展示广告 javascript
- c# - C# 从字节数组中获取第一个 2 个整数
- javascript - jQuery检查集合中的一项是否具有价值
- awk - 匹配两个文件中的值并替换列中的值
- delphi - 异常消息来自哪里?