c# 运行大运算程序主窗体卡掉的解决
2021-09-06 15:11
标签:tar path show hand handler string handle div 一个 写了一个运算过滤大文本的程序, 其中方法里边使用了多线程,并行线程等方法. 但主窗体控件直接使用此方法时,页面卡顿.所以主线程被堵塞. 代码如下, splitfile 这个方法运行时页面卡顿,阻塞了主线程 private void button3_Click(object sender, EventArgs e) { marqueeProgressBarControl1.Visible = true; marqueeProgressBarControl1.Properties.ShowTitle = true; marqueeProgressBarControl1.Text = "数据处理中...请稍后..."; string file = txtPath.Text.Trim(); SpiltFile(file, 1); marqueeProgressBarControl1.Visible = false; } 改成这样: marqueeProgressBarControl1.Visible = true; marqueeProgressBarControl1.Properties.ShowTitle = true; marqueeProgressBarControl1.Text = "数据处理中...请稍后..."; Thread thread = new Thread(new ThreadStart(Run)); thread.Start(); 涉及到方法里边访问控件的问题,所以要使用专门为ui 主线程留下的invoke this.Invoke(new EventHandler(delegate { this.marqueeProgressBarControl1.Visible = false; })); c# 运行大运算程序主窗体卡掉的解决标签:tar path show hand handler string handle div 一个 原文地址:http://www.cnblogs.com/zuochanzi/p/7457250.html
上一篇:收藏学习网站