多线程应用程序 学习

转载 2006年05月24日 23:31:00

定义名称空间
  在.NET中,多线程功能是在System.Threading名称空间中定义的。
using System.Threading;

启动线程
  System.threading名称空间中的Thread类代表一个线程对象,用这个类对象可以创建新的线程,删除、暂停和恢复线程。

    下面的代码使用Thread类创建一个新的线程,然后启动这个线程:

Thread mythread ;

mythread = new Thread(new ThreadStart( WriteData ));
mythread.Start();

其中WriteData是这个线程要执行的一个函数,代码如下:
protected void WriteData(){
 string str ;
 for ( int i = 0; i<=10000; i++ ){
  str = "Secondary Thread" + i.ToString();
  Console.WriteLine(listView1.ListItems.Count, str, 0, new string[]{""} );
  Update();
 }
}

杀死线程
  Thread类的Abort方法用于永久地杀死一个线程。但是请注意,在调用Abort方法前一定要判断线程是否还激活,:
if ( mythread.IsAlive )
{
  mythread.Abort();
}

暂停线程
  Thread.Sleep方法用于将一个线程暂停一段时间,代码如下:
  mythread.Sleep(int);

设置线程的优先权
  我们可以使用Thread类的ThreadPriority属性设置线程的优先权。线程优先权的取值范围是Normal、AboveNormal、BelowNormal、Highest或者Lowest。请看下面的设置代码:  

mythread.Priority = ThreadPriority.Highest;

延迟线程
Thread类的Suspend方法可以延迟一个线程(挂起线程)。线程被延迟到调用Resume方法为止。

if (mythread.ThreadState = ThreadState.Running )
{
  mythread.Suspend();
}

恢复被延迟的线程
  调用Resume方法可以恢复一个被延迟的线程。如果线程没有被延迟,Resume方法就是无效的。
if (mythread.ThreadState = ThreadState.Suspended )
{
  mythread.Resume();
}

[java多线程]多线程学习路线图(不断更新)

多线程学习路线图
  • cq1982
  • cq1982
  • 2014年08月23日 17:27
  • 768

多线程应用程序 学习

定义名称空间  在.NET中,多线程功能是在System.Threading名称空间中定义的。using System.Threading;启动线程  System.threading名称空间中的Th...
  • duilw
  • duilw
  • 2007年10月30日 00:01
  • 289

Java多线程学习(吐血超详细总结)

本文主要讲了java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的一些线程函数用法、概述等。...
  • Evankaka
  • Evankaka
  • 2015年03月14日 13:13
  • 70857

编写多线程应用程序

package cn.scxh.java.thread; /*1.编写多线程应用程序,模拟多个人通过一个山洞的模拟。 这个山洞每次只能通过一个人,每个人通过山洞的时间为5秒,随机生成10个人, 同时准...
  • qq_31158491
  • qq_31158491
  • 2015年09月14日 18:33
  • 339

java学习视频day01多线程Thread

package cn.itcast.thread; /* 线程: 多线程的好处: 多线程解决了在一个进程中同时可以执行多个任务代码的问题。 自定义线程的创建方式: 方式一:继承Threa...
  • honghong75042
  • honghong75042
  • 2016年10月13日 09:18
  • 369

C++ 多线程学习总结

先来一个简单的例子,展示如何创建一个线程 #include #include #include using namespace std; unsigned Counter; uns...
  • hust_bochu_xuchao
  • hust_bochu_xuchao
  • 2016年11月08日 11:06
  • 852

C#多线程操作的学习

开篇:所有的线程虽然在微观上是串行执行的,但是在宏观上你完全可以认为它们在并行执行。 当按照先后顺序开启两个线程的时候,第一先开启的线程,线程内部任务还未执行完的时候,其实第二个语句已经开始,第二 ...
  • leoysq
  • leoysq
  • 2016年10月05日 22:58
  • 332

Linux-(C)多线程学习(入门)

另外自己写了一个多线程程序,实现两个程序聊天 思路: 两个程序分别创建两个线程 (当然创建一个也行,跟主线程就两个,但为了代码美观,毕竟学习) 然后一个程序...
  • qq_33850438
  • qq_33850438
  • 2016年07月26日 19:33
  • 1199

关于多线程的学习心得

1.web应用中,要对某一个任务用多线程实现,最简单的代码格式是不是必须把要执行的代码放在run方法中? WEB服务器会帮你把每个访问请求开辟一个线程,你只要按照你所开发的框架,比如tomcat会让...
  • u012079766
  • u012079766
  • 2016年03月14日 19:30
  • 500

Java多线程(全)学习笔记(上)

资源下载地址:http://download.csdn.net/detail/cloudyxuq/3763101 一.线程的创建和启动 java使用Thread类代表线程,所有的线程对象都必须是T...
  • Cloudyxuq
  • Cloudyxuq
  • 2011年11月06日 21:07
  • 8192
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:多线程应用程序 学习
举报原因:
原因补充:

(最多只允许输入30个字)