当前位置: 首页 > news >正文

重庆做网站建设公司排名陕西网站seo

重庆做网站建设公司排名,陕西网站seo,什么网站做电脑系统好,日本做a的动画视频网站有哪些在 C# 中,Thread.Join 是一个非常有用的方法,它可以让主线程(调用线程)等待子线程(被调用线程)执行完毕后再继续执行。 1、经典示例1 using System; using System.Threading;public class Example {stati…

在 C# 中,Thread.Join 是一个非常有用的方法,它可以让主线程(调用线程)等待子线程(被调用线程)执行完毕后再继续执行。

1、经典示例1

using System;
using System.Threading;public class Example
{static Thread thread1, thread2;public static void Main(){thread1 = new Thread(ThreadProc);thread1.Name = "Thread1";thread1.Start();thread2 = new Thread(ThreadProc);thread2.Name = "Thread2";thread2.Start();Console.ReadKey();}private static void ThreadProc(){Console.WriteLine("\nCurrent thread: {0}", Thread.CurrentThread.Name);if (Thread.CurrentThread.Name == "Thread1" &&thread2.ThreadState != ThreadState.Unstarted){Console.WriteLine("thread2.Join");thread2.Join(); }Thread.Sleep(1000);Console.WriteLine("\nCurrent thread: {0}", Thread.CurrentThread.Name);Console.WriteLine("Thread1: {0}", thread1.ThreadState);Console.WriteLine("Thread2: {0}\n", thread2.ThreadState);}
}

运行结果


Current thread: Thread1
thread2.JoinCurrent thread: Thread2Current thread: Thread2
Thread1: WaitSleepJoin
Thread2: RunningCurrent thread: Thread1
Thread1: Running
Thread2: Stopped

这个例子演示了“Thread.Join 会阻塞调用线程,直到被调用线程完成执行”

2、经典示例2

using System.Threading;
using System;class TestThread
{private static void ThreadTst(){Console.WriteLine("  " + Thread.CurrentThread.Name + "   开始执行");for (int i = 0; i < 10; i++){Console.WriteLine("     " + Thread.CurrentThread.Name + "   i =  " + i);Thread.Sleep(10);}Console.WriteLine("  " + Thread.CurrentThread.Name + "   执行完毕");}static void Main(string[] args){//程序调用了Main()函数时,就起动了一个进程,同时也启动了一个线程[这个线程就是主线程].Thread.CurrentThread.Name = "MainThread";//创建第一个线程Thread tA = new Thread(new ThreadStart(TestThread.ThreadTst));tA.Name = "线程A";Thread tB = new Thread(new ThreadStart(TestThread.ThreadTst));tB.Name = "线程B";Thread tC = new Thread(new ThreadStart(TestThread.ThreadTst));tC.Name = "线程C";Thread tD = new Thread(new ThreadStart(TestThread.ThreadTst));tD.Name = "线程D";for (int z = 0; z < 20; z++){if (z == 3){Console.WriteLine("tA.Start");tA.Start();Console.WriteLine("tB.Start");tB.Start();}else if (z == 6){Console.WriteLine("tA.Join");tA.Join();Console.WriteLine("tB.Join");tB.Join();}else if (z == 9){Console.WriteLine("tC.Start");tC.Start();Console.WriteLine("tD.Start");tD.Start();}else{Console.WriteLine(Thread.CurrentThread.Name + "   z =  " + z);}}Console.Read();}
}

运行结果

MainThread   z =  0
MainThread   z =  1
MainThread   z =  2
tA.Start
tB.Start
MainThread   z =  4
MainThread   z =  5
tA.Join线程A   开始执行线程A   i =  0线程B   开始执行   ->注意这里并没有返回调用线程,这里是线程B线程B   i =  0线程A   i =  1线程B   i =  1线程A   i =  2线程B   i =  2线程A   i =  3线程B   i =  3线程A   i =  4线程B   i =  4线程A   i =  5线程B   i =  5线程A   i =  6线程B   i =  6线程A   i =  7线程B   i =  7线程A   i =  8线程B   i =  8线程B   i =  9线程A   i =  9线程A   执行完毕线程B   执行完毕
tB.Join              ->注意线程B已经执行完毕了
MainThread   z =  7
MainThread   z =  8
tC.Start
tD.Start
MainThread   z =  10
MainThread   z =  11
MainThread   z =  12
MainThread   z =  13
MainThread   z =  14
MainThread   z =  15
MainThread   z =  16
MainThread   z =  17
MainThread   z =  18
MainThread   z =  19线程C   开始执行    ->线程C是等主线程结束后才开始执行的线程C   i =  0线程D   开始执行线程D   i =  0线程C   i =  1线程D   i =  1线程C   i =  2线程D   i =  2线程C   i =  3线程D   i =  3线程C   i =  4线程D   i =  4线程C   i =  5线程D   i =  5线程C   i =  6线程D   i =  6线程C   i =  7线程D   i =  7线程C   i =  8线程D   i =  8线程C   i =  9线程D   i =  9线程C   执行完毕线程D   执行完毕

这个例子主要目的是对比使用join(线程A、)和未使用join(线程C)的区别

http://www.dt0577.cn/news/24707.html

相关文章:

  • html网页设计用什么软件seo点石论坛
  • 网站开发费用怎么账务处理长沙网站优化推广
  • 电子商务网站建设与管理最新试卷百度一下官网手机版
  • 奶茶加盟网站建设网站首页关键词如何优化
  • 中国空间站离地球多远济南网站制作平台
  • 网站建设除了中企动力短视频营销的优势
  • 两学一做考学网站中国腾讯和联通
  • 聊城做网站的公司咨询seo网站关键词优化哪家好
  • 创建一个网站要钱吗青岛百度推广seo价格
  • 唐山市住房和城乡建设局官方网站百度seo优化技巧
  • 海珠网站建设热搜词排行榜关键词
  • 做网站需要知道什么软件seo品牌推广方法
  • mysql做网站怎么查看数据朋友圈产品推广文案
  • 网站设计网络公司交换链接或称互惠链接
  • 自学网站建设工资如何做网站赚钱
  • 农产品网站建设天津天狮网络营销课程
  • 网站图片怎样做seo优化推广产品的软文怎么写
  • 南通网站建设seo上海今天最新新闻10条
  • 什么网站做h5没有广告网络优化工程师是做什么的
  • 网站主页设计注意点汕头seo代理商
  • 廊坊高端品牌网站建设网络推广公司主要做什么
  • 网站logo怎么做才清晰seo关键词快速排名
  • 做网站违法推广页面
  • wordpress页面不要侧边栏搜索引擎优化排名品牌
  • 北京知名的网站建设公司写一篇软文推广自己的学校
  • 适合大型网站的流量套餐做seo有什么好处
  • 火星免费建网站上海网络推广公司
  • 聊城做网站公司百度seo多久能优化关键词
  • 做网站网页需要什么技术网站流量数据分析
  • 龙岗爱联网站建设怎么快速优化网站