开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

首页   >   博客   >   18803836360

自己join

个人分类: 停课一周 | 2017-9-29 11:02
后台线程+join,主函数中加入了join时,main函数要等后台线程结束,餐开始执行其他线程

前台线程中的后台线程+jion;那么先让join的后台线程,或者其他执行,当前线程或者函数,等待



thread t =new thread(new parameterrizedThreadStart(func));
t.start(object参数);       此时start有两个重载函数

线程池:调用队列使用方法添加任务,自动提取任务(queneuserworkitem)   默认后台线程
threadPool 线程池,静态方法,  队列三个重载的方法,(委托就是方法)

线程池里边是后台线程,如果主函数内容少,那么后台线程可能执行不到,所以需要休眠几秒中,以保证后台线程的执行

线程同步技术(先前者线程,后后者线程)
同一个时间只能有一个任务访问共享的资源
monitor.enter(object类型的参数)
try(开始监视)
finally(退出监视)  其他线程对上锁判断,上锁则等待,不上锁那么就上锁执行

当我们使用线程的时候,效率最高的方式当然是异步,即各个线程同时运行,其间不相互依赖和等待。但当不同的线程都需要访问某个资源的时候,就需要同步机制了,也就是说当对同一个资源进行读写的时候,我们要使该资源在同一时刻只能被一个线程操作,以确保每个操作都是有效即时的,也即保证其操作的原子性。lock是C#中最常用的同步方式,格式为lock(objectA){codeB} 。

0 0

作者的其他最新博客

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册帐号

个人分类

标签

阅读排行

评论排行

推荐博客

最新博客

返回顶部