查看: 1135|回复: 2
收起左侧

[系统] C# 多线程 简单线程回调 假死

[复制链接]
沧海ふ无涯
发表于 2013-11-15 15:11:14 | 显示全部楼层 |阅读模式
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.Threading;

  10. namespace WindowsFormsApplication2
  11. {
  12.     public partial class Form1 : Form
  13.     {
  14.         public delegate void update();
  15.         bool stop = false;
  16.         Thread newThread;
  17.         public Form1()
  18.         {
  19.             InitializeComponent();

  20.             newThread = new Thread(new ThreadStart(mm));
  21.             
  22.            
  23.         }

  24.         public void mm()
  25.         {
  26.             update cc = new update(run);
  27.             textBox1.Invoke(cc);
  28.             
  29.          }
  30.         public void run()
  31.         {
  32.             for (int i = 1; i < 10000; i++)
  33.             {
  34.                 textBox1.Text = i.ToString ();
  35.                 Thread.Sleep(200);
  36.                 if (stop)
  37.                     break;
  38.             }
  39.         }

  40.         private void button1_Click(object sender, EventArgs e)
  41.         {
  42.             newThread.IsBackground = true;
  43.             newThread.Start();
  44.         }

  45.         private void button2_Click(object sender, EventArgs e)
  46.         {
  47.             stop = true;
  48.         }
  49.     }
  50. }
复制代码
程序很简单就一个textbox和2个button

button2_Click事件跑动代码

但运行到run方法的时候程序居然假死了

这个怎么解决?
tuw
发表于 2013-11-15 23:57:26 | 显示全部楼层
textBox1.Invoke(cc);
虽然不太懂 但是我能感觉到问题出在这里
沧海ふ无涯
 楼主| 发表于 2013-11-16 21:17:58 | 显示全部楼层
tuw 发表于 2013-11-15 23:57
textBox1.Invoke(cc);
虽然不太懂 但是我能感觉到问题出在这里

本身就是么....
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2025-1-12 17:44 , Processed in 0.126573 second(s), 16 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表