有哪位兄弟给个“开始/暂停/终止”线程的例子吗?C#版 VS2005的 刚学到线程的使用。可以开始,但停止后,程序还在运行,可能是写得不对,所以想找个例子看看。有没有简单点的例子。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把你的代码贴出来看看啊。msdn 里有很多线程的例子的。 我在线程的执行过程中,为什么不反调用form类中的涵数时,此涵数不执行呢?form类中有个涵数为:public void ps_show_url(string url) { this.show_url.Text = url; }我在另一个类中(是由form类里执行的另一个线程类)调用这个时时显示数据库的涵数,虽然可以调用,但TEXTBOX中却始终不会显示任何东西。 顶一下。我用了Monitor也不行。真奇怪。我找了个2003的例子,可是放在2005中就不行。 private Thread calcThread; //声明一个线程 private Form2 calcForm; //一个Form2窗体 private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e) { switch (toolBar1.Buttons .IndexOf (e.Button )) { case 0: if (calcThread==null) { calcForm.Show (); //把线程实例化,并设置优先级 calcThread = new Thread (new ThreadStart (calcForm.MyCalculate)); calcThread.Priority = ThreadPriority.Normal; //启动线程 calcThread.Start (); } break; case 1: //当前线程休眠10秒 Thread.Sleep (10*1000); break; case 2: if (calcThread.ThreadState == ThreadState.Running ) { //挂起线程 calcThread.Suspend (); e.Button .Text = "Resume"; } else if (calcThread.ThreadState == ThreadState.Suspended ) { //继续线程 calcThread.Resume (); e.Button .Text = "Suspend"; } break; case 3: if (calcThread.IsAlive ) { //终止线程 calcThread.Abort (); calcForm.Hide (); } break; } } private void Form1_Load(object sender, System.EventArgs e) { //初始化Form2实例,并隐藏起来 calcForm = new Form2 (); calcForm.Hide (); } }}用这个放在2005里不行吗? 我写过多个例子,供参考,使用多线程加载多个Xml文件到TreeView控件[翻译]http://blog.csdn.net/zhzuo/archive/2004/06/10/22037.aspx编写多线程网络检测程序的简单实现http://blog.csdn.net/zhzuo/archive/2004/07/08/37262.aspx用C#去除代码的SourceSafe管理http://blog.csdn.net/zhzuo/archive/2004/06/15/22038.aspx 多线程中子线程没有结束前关闭窗口的问题 外壳加密后 webservice 不能序列化 如何写一个windows服务,开机自动启动。注:这个服务需要接收传入参数 如何根据2点经纬度计算偏移角 怎样防止C#的程序被反编译或以其他形式给破了? 100分敬上,大家帮下忙! 在C#加WebForm程序时,使用WebControls.TreeView控件,为什么我在代码中的treeNode.Expand=True的语句不激发Expand事件 工作之余用C#实现的数据结构演示!(全源码) 两个问题? 能否用c#开发activeX控件否? 透明背景控件的问题 有没有将整个解决方案的代码转成文本的工具?
form类中有个涵数为:
public void ps_show_url(string url)
{
this.show_url.Text = url;
}我在另一个类中(是由form类里执行的另一个线程类)调用这个时时显示数据库的涵数,虽然可以调用,但TEXTBOX中却始终不会显示任何东西。
private Form2 calcForm; //一个Form2窗体 private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
switch (toolBar1.Buttons .IndexOf (e.Button ))
{
case 0:
if (calcThread==null)
{
calcForm.Show ();
//把线程实例化,并设置优先级
calcThread = new Thread (new ThreadStart (calcForm.MyCalculate));
calcThread.Priority = ThreadPriority.Normal;
//启动线程
calcThread.Start ();
}
break;
case 1:
//当前线程休眠10秒
Thread.Sleep (10*1000);
break;
case 2:
if (calcThread.ThreadState == ThreadState.Running )
{ //挂起线程
calcThread.Suspend ();
e.Button .Text = "Resume";
}
else if (calcThread.ThreadState == ThreadState.Suspended )
{ //继续线程
calcThread.Resume ();
e.Button .Text = "Suspend";
}
break;
case 3:
if (calcThread.IsAlive )
{ //终止线程
calcThread.Abort ();
calcForm.Hide ();
}
break;
}
} private void Form1_Load(object sender, System.EventArgs e)
{ //初始化Form2实例,并隐藏起来
calcForm = new Form2 ();
calcForm.Hide ();
}
}
}用这个放在2005里不行吗?
使用多线程加载多个Xml文件到TreeView控件[翻译]
http://blog.csdn.net/zhzuo/archive/2004/06/10/22037.aspx
编写多线程网络检测程序的简单实现
http://blog.csdn.net/zhzuo/archive/2004/07/08/37262.aspx
用C#去除代码的SourceSafe管理
http://blog.csdn.net/zhzuo/archive/2004/06/15/22038.aspx