使用AutoResetEvent的问题 [问题点数:200分]

Bbs1
本版专家分:100
结帖率 84.21%
Bbs12
本版专家分:468057
Blank
进士 2018年总版新获得的技术专家分排名前十
2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2019年1月 .NET技术大版内专家分月排行榜第一
2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2019年4月 .NET技术大版内专家分月排行榜第二
2019年3月 .NET技术大版内专家分月排行榜第二
2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs12
本版专家分:468057
Blank
进士 2018年总版新获得的技术专家分排名前十
2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2019年1月 .NET技术大版内专家分月排行榜第一
2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2019年4月 .NET技术大版内专家分月排行榜第二
2019年3月 .NET技术大版内专家分月排行榜第二
2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs12
本版专家分:468057
Blank
进士 2018年总版新获得的技术专家分排名前十
2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2019年1月 .NET技术大版内专家分月排行榜第一
2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2019年4月 .NET技术大版内专家分月排行榜第二
2019年3月 .NET技术大版内专家分月排行榜第二
2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs6
本版专家分:7442
Bbs12
本版专家分:468057
Blank
进士 2018年总版新获得的技术专家分排名前十
2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2019年1月 .NET技术大版内专家分月排行榜第一
2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2019年4月 .NET技术大版内专家分月排行榜第二
2019年3月 .NET技术大版内专家分月排行榜第二
2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs12
本版专家分:468057
Blank
进士 2018年总版新获得的技术专家分排名前十
2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2019年1月 .NET技术大版内专家分月排行榜第一
2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2019年4月 .NET技术大版内专家分月排行榜第二
2019年3月 .NET技术大版内专家分月排行榜第二
2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs12
本版专家分:468057
Blank
进士 2018年总版新获得的技术专家分排名前十
2017年 总版技术专家分年内排行榜第十
2013年 总版技术专家分年内排行榜第八
Blank
铜牌 2018年12月 总版技术专家分月排行榜第三
2018年11月 总版技术专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
Blank
红花 2019年1月 .NET技术大版内专家分月排行榜第一
2018年12月 .NET技术大版内专家分月排行榜第一
2018年11月 .NET技术大版内专家分月排行榜第一
2018年10月 .NET技术大版内专家分月排行榜第一
2018年9月 .NET技术大版内专家分月排行榜第一
2018年7月 .NET技术大版内专家分月排行榜第一
2018年6月 .NET技术大版内专家分月排行榜第一
2018年1月 .NET技术大版内专家分月排行榜第一
2017年5月 .NET技术大版内专家分月排行榜第一
2017年4月 .NET技术大版内专家分月排行榜第一
2017年3月 .NET技术大版内专家分月排行榜第一
2017年2月 .NET技术大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一
2016年8月 .NET技术大版内专家分月排行榜第一
2016年7月 .NET技术大版内专家分月排行榜第一
Blank
黄花 2019年4月 .NET技术大版内专家分月排行榜第二
2019年3月 .NET技术大版内专家分月排行榜第二
2018年8月 .NET技术大版内专家分月排行榜第二
2018年4月 .NET技术大版内专家分月排行榜第二
2018年3月 .NET技术大版内专家分月排行榜第二
2017年12月 .NET技术大版内专家分月排行榜第二
2017年9月 .NET技术大版内专家分月排行榜第二
2017年7月 .NET技术大版内专家分月排行榜第二
2017年6月 .NET技术大版内专家分月排行榜第二
2016年12月 .NET技术大版内专家分月排行榜第二
2016年9月 .NET技术大版内专家分月排行榜第二
2016年6月 .NET技术大版内专家分月排行榜第二
2016年3月 .NET技术大版内专家分月排行榜第二
2016年1月 .NET技术大版内专家分月排行榜第二
2015年12月 .NET技术大版内专家分月排行榜第二
2015年2月 .NET技术大版内专家分月排行榜第二
2015年1月 .NET技术大版内专家分月排行榜第二
2014年11月 .NET技术大版内专家分月排行榜第二
2014年5月 .NET技术大版内专家分月排行榜第二
2014年4月 .NET技术大版内专家分月排行榜第二
2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
Bbs4
本版专家分:1298
Bbs3
本版专家分:515
Bbs3
本版专家分:515
AutoResetEvent的终止状态和非终止状态
这里的状态不是线程的非终止状态是事件的非终止状态,     AutoResetEvent形象说就像一个水龙头一样,当你关闭水龙头,状态就是关闭(终止状态),所有的水都在里面等待流出来,当水龙头打开,就发送一个事件说里面的水可以出来了,这时就是非终止状态,一般是用来同步访问资源. AutoResetEvent类的对象,如ManualResetEvent对象一样,大家可以把它简单地理解为一个信号
[WF4.0 实战] AutoResetEvent详解(线程独占访问资源)
由来:   在学习工作流的过程中,宿主程序中会出现这么一段代码 staticAutoResetEvent instanceUnloaded = new AutoResetEvent(false); 然后就是在方法中这样<em>使用</em> instanceUnloaded.Set();//将事件状态设置为终止状态,允许一个或多个等待线程继续 instanceUnloaded.W
AutoResetEvent 详解
AutoResetEvent 允许线程通过发信号互相通信。通常,此通信涉及线程需要独占访问的资源。 线程通过调用 AutoResetEvent 上的 WaitOne 来等待信号。如果 AutoResetEvent 处于非终止状态,则该线程阻塞,并等待当前控制资源的线程 通过调用 Set 发出资源可用的信号。 调用 Set 向 AutoResetEvent 发信号以释放等待线程。AutoRe
C#线程同步AutoResetEvent
C#线程同步,多个线程去执行,检测到最后一个线程执行完成,主线程继续执行其他业务AutoResetEvent
多线程编程学习系列之--AutoResetEvent类
示例代码n//nprivate static AutoResetEvent _workerEvent = new AutoResetEvent(false);nprivate static AutoResetEvent _mainEvent = new AutoResetEvent(false);nnstatic void Process(int seconds)n{n //输出顺序:2n ...
AutoResetEvent的问题
请问一下各位,小弟的程序中有一个消息转盘,利用WaitHandle.WaitAny()方法在等待其中某个信号量的激活,从而使其中某一个方法继续运行,但是如果当这个方法被激活后在运行时,这个信号量又被激活了一次,这个时候该方法只会运行一次,怎么样做才能让这个方法运行多次,也就是激活多次,它就运行几次。大概的代码如下rnrnpublic static void ThreadPro()rnrn while(true)rn rn int index=WaitHandle.WaitAny(new AutoResetEvent[] are1 );rn rn if(index==0)rn rn Process();...rn rn rnrnrnstatic void Main()rn rn int count=0;rn while(count<10)rn rn are1.Set();rn rnrnrn这个时候我想要Process()运行十次可行吗?
c#网络传输
接着前面简单讲的,给大家聊聊服务开发。nn网络传输nn先说网络传输开发,总体来说,可以看成4中模型nnnn我们把传输过程看做网线,那么在通过传输的过程中。2边就涉及池化<em>问题</em>,也就是我们常见的异步传输。nn在业务端,有N个线程将数据放到池中(矩形),然后“网线”处有M个线程将数据丢到网络上。对于2边都是。nn对于最上面的那种模型,M=0,也就是我们常见的一端直接发送,一端接收。也就是一对一的同步应用...
AutoResetEvent使用疑问
求问各位走过路过的大神,AutoResetEvent一定要<em>使用</em>static吗?比如说我一个进程开了两个线程去干活,但是两个线程都new了rnAutoResetEvent,为什么有的时候我在其中一个线程用set的时候,两个线程的waitone都会收到信号?
多线程实验_1
C#多线程实验,就AutoResetEvent,ManualResetEvent,Thread.join(),委托多线程回调。
【CSharp 学习笔记】关于ManualResetEvent的用法
关于ManualResetEventThread包中的类,多用于多线程协同和进程操作。
C#总结(一)AutoResetEvent的使用介绍(用AutoResetEvent实现同步)
rn rn C#总结(一)AutoResetEvent的<em>使用</em>介绍(用AutoResetEvent实现同步)rn rn rn rn   前几天碰到一个线程的顺序执行的<em>问题</em>,就是一个异步线程往A接口发送一个数据请求。另外一个异步线程往B接口发送一个数据请求,当A和B都执行成功了,再往C接口发送一个请求。说真的,一直做BS项目,对线程了解,还真不多。就知道AutoResetEvent这个...
关于AutoResetEvent问题
我在线程里通过调用 AutoResetEvent 上的 WaitOne 来等待信号。rn当有信号过来则执行一下的处理。rn但是有一个<em>问题</em>。。rn正在执行处理过程中还没有走到一下WaitOne的时候 又来了一个信号, 这时 如何捕获到这些信号?也能让其执行 WaitOne之后的语句?rnrn小弟在此先谢过 这个高手了。。
autoResetEvent示例
1个线程添加任务,3个线程取任务进行计算,用autoResetEvent实现添加任务线程与去任务线程的同步。
多线程 autoresetevent
只定义一个<em>autoresetevent</em>, 同时有三个线程<em>使用</em>它阻塞线程, 当主线程调用set()时候,被堵塞的三个线程是被激活吗,还是只激活其中一个?
AutoResetEvent和ManualResetEvent的一个现象和问题
两种情形:rn1)rn public static [b]AutoResetEvent[/b] acceptDone = new [b]AutoResetEvent[/b](false);rnrn ...rn Listen_BeginAccept();rn ...rnrnrnrn public void AcceptCallback(IAsyncResult ar)rn rn Socket listen = (Socket)ar.AsyncState;rn handler = listen.EndAccept(ar);rnrn acceptDone.Set();rnrn Listen_BeginAccept();rn rnrn private void Listen_BeginAccept()rn rn //listen is the server socket to listen on the portrn listen.BeginAccept(new AsyncCallback(AcceptCallback), listen);rn Console.WriteLine("Enter BeginAccept WaitOne");rnrn acceptDone.WaitOne();rn rnrn2)rn public static [b]ManualResetEvent[/b] acceptDone = new [b]ManualResetEvent[/b](false);rnrn Listen_BeginAccept();rnrn public void AcceptCallback(IAsyncResult ar)rn rn Socket listen = (Socket)ar.AsyncState;rn handler = listen.EndAccept(ar);rnrn acceptDone.Set();rn //[color=#FF0000]Thread.Sleep(100);[/color]rn Listen_BeginAccept();rn rnrn private void Listen_BeginAccept()rn rn [b]acceptDone.Reset();[/b]rnrn //listen is the server socket to listen on the portrn listen.BeginAccept(new AsyncCallback(AcceptCallback), listen);rn Console.WriteLine("Enter BeginAccept WaitOne");rnrn acceptDone.WaitOne();rn rn rnrn两种方案,在1)中执行是没有<em>问题</em>的,但是在2)中<em>问题</em>就出现了。rn在2)中,acceptDone.Set();之后,程序会直接跑到函数Listen_BeginAccept()里面,而不是先通过WaitOne,从而会一直wait从而不能继续执行,除非我加一句红色的Thread.Sleep(100),(其实这儿需要的是一个很短的时间,不一定非要sleep,一句Consolo.WriteLine()也行),这样才能正确执行。rn那为什么1)中可以先通过WaitOne执行,而不是先进入函数Listen_BeginAccept()?rnrn原因是什么?rn
AutoResetEvent执行线程顺序问题
如下,function3中的set执行完毕后,系统会随机执行function1的.WaitOne()或者function2的.WaitOne() ,如果执行的 是 function1的.WaitOne(),则系统将不会有任何输出,会无限制等待开启信号,如果执行的是 function2的.WaitOne()一切正常,按照执行顺序 function3-function2function1rnrn我想用AutoResetEvent人为的控制线程的执行顺序(ManualResetEvent方法试过可以),该怎么做呢??rn static AutoResetEvent mre = new AutoResetEvent(false);rn static AutoResetEvent mre1 = new AutoResetEvent(false);rn static void Main(string[] args)rn rn funDelegate1();rn rn static private void funDelegate1()rn rn ThreadPool.QueueUserWorkItem(new WaitCallback(function1));rn ThreadPool.QueueUserWorkItem(new WaitCallback(function2));rn ThreadPool.QueueUserWorkItem(new WaitCallback(function3));rn Console.Read();rn rn private static void function1(object funParam)rn rn mre.WaitOne();rn mre1.WaitOne();rn StackTrace st = new StackTrace(true);rn Console.WriteLine(st.GetFrame(0).GetMethod().Name);rn rn private static void function2(object funParam)rn rn mre.WaitOne();rn mre1.Set();rn StackTrace st = new StackTrace(true);rn Console.WriteLine(st.GetFrame(0).GetMethod().Name);rn rn private static void function3(object funParam)rn rn StackTrace st = new StackTrace(true);rn Console.WriteLine(st.GetFrame(0).GetMethod().Name);rn mre.Set();rn
线程通知机制 关键字 AutoResetEvent
线程通知nusing System;nusing System.Collections.Generic;nusing System.Linq;nusing System.Text;nusing System.Threading.Tasks;nusing System.Threading;nnnamespace ThreadTestn{n class Programn {
线程同步机制-AutoResetEvent
AutoResetEvent 允许线程通过发信号互相通信。通常,此通信涉及线程需要独占访问的资源。 线程通过调用 AutoResetEvent 上的 WaitOne 来等待信号。如果 AutoResetEvent 处于非终止状态,则该线程阻塞,并等待当前控制资源的线程通过调用 Set 发出资源可用的信号。 调用 Set 向 AutoResetEvent 发信号以释放等待线程。AutoResetEvent 将保持终止状态,直到一个正在等待的线程被释放,然后自动返回非终止状态。如果没有任何线程在等待,则状态将无限期地保持为终止状态
C#多线程同步(四)【AutoResetEvent】
什么时候也不要放弃希望,越是险恶的环境越要燃起希望的意志。AutoResetEvent用于线程间的同步Test.cs代码: class Testn {n //构造函数,用一个指示是否将初始状态设置为终止的布尔值初始化该类的新实例。n //false:无信号,子线程的WaitOne方法不会被自动调用n //true:有信号,子线程的WaitOne方法会被
autoresetEvent set()方法
code:rnrnAutoResetEvent myResetEvent = new AutoResetEvent(false)rnrnwhile(true){rnmyResetEvent.WaitOne();rn.....//这里面还要调用别的方法。rnrn}rnrn试问:是不是每当myResetEvent.Set()调用了时,myResetEvent.WaitOne();后面的代码都会执行啊?不管上次的方法有没有执行完毕,只要调用set一下,就回立即执行后面的代码?
AutoResetEvent配合webClient.DownloadDataAsync 接收不到信号问题
就是很简单的从书上抄下来的,放在wpf的 MainWindow 中测试,但是发现AutoResetEvent 接收不到 .Set() 信号,永远都是超时webClient.CancelAsync() 的情况,求测试求解答。rnrnpublic MainWindow()rnrn InitializeComponent();rnrn ///////////////////////////////////////////////////////rnrn AutoResetEvent downloadWaitEvent = new AutoResetEvent(false);rn WebClient webClient = new WebClient(); rnrn webClient.DownloadDataCompleted += new DownloadDataCompletedEventHandler(rr);rnrnrn var imgUrl = "http://img4.cache.netease.com/m/2013/12/18/20131218104403bd5df.png";//rnrn //rn webClient.DownloadDataAsync(new Uri(imgUrl), downloadWaitEvent); rnrn if (downloadWaitEvent.WaitOne(10000)) //rn rn //rn System.Windows.MessageBox.Show("ll");rn //rn rn elsern rn webClient.CancelAsync();rn System.Windows.MessageBox.Show("CancelAsync");rn rnrnrnprivate void rr(object sender, DownloadDataCompletedEventArgs e)rnrn //rn var waiterTmp = (AutoResetEvent)e.UserState;rn //rn tryrn rn // rn if (!e.Cancelled && e.Error == null)rn rn var bytes = e.Result;rn //rn rn rn finallyrn rn //rn waiterTmp.Set(); //rn //rnrn rn
AutoResetEvent怎么用
AutoResetEvent怎么用rnrnrn除了读写文件,,还有什么时候可以用,,大家能不能给我举几个大家实际的例子,,
c# AutoResetEvent 控制线程暂停,恢复的问题
[code=csharp]rn public delegate void WorkThreadHandler();rn rn public class WorkThreadrn rn public event WorkThreadHandler OnWorkdThreadEvent;rnrn EventWaitHandle _wh = new AutoResetEvent(false);rn Thread _worker;rn private bool _isRun=false;rnrn public void DoWork()rn rn while (true)rn rn if (_isRun)rn rn WorkThreadHandler handler = OnWorkdThreadEvent;rn if (handler != null) handler();rn rn elsern rn _wh.WaitOne();rn rn rn rnrn public void Start()rn rn _worker = new Thread(DoWork);rn _worker.Start();rn rnrn public void Resume()rn rn _isRun = true;rn _wh.Set();rn rnrn public void Suspend()rn rn _isRun = false;rn _wh.WaitOne();rn rnrn public void Stop()rn rn _isRun = true;rn _wh.Close();rn rn rn[/code]rn不想采用过时的Suspend,Resume来控制线程,自己写了如上的一个类rn可是不知道为什么通过对应的方法无法起到控制的作用....rn求解。
C#多线程——线程同步
一、为什么要线程同步?nn多个线程同时<em>使用</em>共享对象会造成很多<em>问题</em>,同步这些线程使得对共享对象的操作能够以正确的顺序执行是非常重要的。nn二、实现线程同步的方法:nn• <em>使用</em>Mutex类n• <em>使用</em>SemaphoreSlim类n• <em>使用</em>AutoResetEvent类n• <em>使用</em>ManualResetEventSlim类n• <em>使用</em>CountDownEvent类n• <em>使用</em>Barrier类n• <em>使用</em>Reade...
AutoResetEvent、ManualResetEvent能否用于进程通信?
c++的CreateEvent就可以,c#的AutoResetEvent、ManualResetEvent可以吗rn为什么AutoResetEvent、ManualResetEvent没有名字这个参数?
C# 多线程同步、异步_AutoResetEvent用法
C# 在vs2008下完美运行,通过AutoResetEvent,根据两个线程的运行时间,选择线程跟随或是线程交替,达到线程同步或是异步的目的。
谁能给讲讲AutoResetEvent的终止状态
rt,终止状态和非终止状态是什么意思?rn线程的终止状态和非终止状态是什么意思?哪位GG能给讲一下?
关于线程AutoResetEvent应用的疑问
以下是我<em>使用</em>AutoResetEvent测试的一段简单代码rn[code=C#]rnusing System;rnusing System.Threading;rnrnnamespace AutoResetEvent_Examplesrnrn class MyMainClassrn rn //初始的时候是没有信号的,这里的意思是指参数falsern const int numIterations = 10; //重复次数设置多少都无所谓,为让大家看清楚设置了100rn static AutoResetEvent myResetEvent = new AutoResetEvent(false);rn static int number;rnrn static void Main()rn rn //创建并开始一个线程。rn Thread myReaderThread = new Thread(new ThreadStart(MyReadThreadProc));rn myReaderThread.Name = "副线程";rn myReaderThread.Start();rnrn for (int i = 1; i , Thread.CurrentThread.Name, number);rn前都会调用WaitOne()方法组织当前线程;为什么会出现连续的两次的副线程输出:rn副线程的Number数值:1rn副线程的Number数值:3rnrn2.变量number是个静态变量;为什么会出现rn-----主线程的Number数值:3rn副线程的Number数值:1rn副线程的Number数值:3rn.rn.rn.rn.rn.rn-----主线程的Number数值:8rn副线程的Number数值:4rn副线程的Number数值:8rn这种现象
线程里的 Thread + AutoResetEvent 请教啥意思?
发送和接收的多线程处理,建议采取Thread加上 AutoResetEvent来控制。这一部分如果无法完成可以来到北京后再做rnrn这是MS 的专家说的 没明白 AutoResetEvent 是啥意思rnrn哪位知道的 说说, 最好有点代码事例 谢谢rn
AutoResetEvent表现异常时如何检测?
//变量声明:rn AutoResetEvent breakplayctrlevent=new AutoResetEvent(false);rnrn//在另一个线程的循环中检测:rn while(true)rn if(breakplayctrlevent.WaitOne(0,false))rn break;rn rn //...rn rnrn//主线程控制:rn breakplayctrlevent.Set();rnrnrn看上去并无甚复杂,但并非总能正常运行,偶尔会出现失控的时候。请问有什么方法能只检测breakplayctrlevent的状态但不改变它么?rnrn可能会有人说,为什么不就直接用一个普通bool变量进行控制与检测呢?也可以吧,这里只是想利用一下AutoResetEvent的自动恢复功能吧。
为什么AutoResetEvent变量不能传递给线程?
实现多线程同时向多个目标地点发送一个文件。rnrn程序如下rn[code=C#]AutoResetEvent[] are = new AutoResetEvent[releasePaths.Count];rn rn int _h = 0;rn foreach (var item in releasePaths)rn rn Console.WriteLine("In:_h=0", _h);rn are[_h] = new AutoResetEvent(false);rn Thread thread = new Thread(() => item.SendFile("2012-9-11.zip", are[_h]));rn _h++;rn rn thread.Start();rn rn WaitHandle.WaitAll(are);[/code]rnrnSendFile内部:rn[code=C#]public bool SendFile(string from, AutoResetEvent autoRE = null)rn rn tryrn rn if (lowPath.StartsWith("ftp://"))rn rn tryrn rn FTPclient ftpClient = new FTPclient(lowPath, User, Password);rnrn return ftpClient.Upload(from, lowPath);rn rn catch (Exception)rn rn return false;rn rn rn elsern rn if (!DstPath.EndsWith("\\"))rn rn DstPath += "\\";rn rnrn int times = 0;rn while (times < 10)rn rn tryrn rn File.Copy(from, DstPath + System.IO.Path.GetFileName(from), true);rn return true;rn rn catch (Exception e)rn rn lock (ReleasePath._LockObj)rn rn Log.WriteLog("Exception: " + e.Message);rn rn Thread.Sleep(300000);rn rn times++;rn rn return false;rn rn rn finallyrn rn if (autoRE != null)rn rn autoRE.Set();rn rn rn [/code]rnrn一运行就报错:rnUnhandled Exception: System.IndexOutOfRangeException: Index was outside the bounds of the array.rn at UpdateKav.Program.<>c__DisplayClass4. b__0()rn at System.Threading.ThreadHelper.ThreadStart_Context(Object state)rn at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)rn at System.Threading.ThreadHelper.ThreadStart()rnrn我把rn[code=C#]Thread thread = new Thread(() => item.SendFile("2012-9-11.zip", are[_h]));[/code]rn改成rn[code=C#]Thread thread = new Thread(() => item.SendFile("2012-9-11.zip", null));[/code]rn并且把WaitHandle.WaitAll(are);这行注释掉,程序就OK。rnrn求高手解释!
关于线程同步AutoResetEvent类的一些问题疑惑
[code=csharp]rnusing System;rnusing System.Collections.Generic;rnusing System.Linq;rnusing System.Text;rnrnusing System.Threading;rnusing System.Net;rnusing System.Net.Sockets;rnrnnamespace ConsoleApplication1rnrn class Programrn rn public static AutoResetEvent allDone = new AutoResetEvent(true);rn static void Main(string[] args)rn rn Thread t1 = new Thread(new ThreadStart(Thread1));rn Thread.Sleep(1000);rn Console.WriteLine("Ready Start");rn t1.Start();rn //allDone.Set();rn Console.ReadLine();rn rn public static void Thread1()rn rn while (true)rn rn allDone.WaitOne();rn Thread.Sleep(100);rn Console.WriteLine("T1 start");rn //Thread.Sleep(300);rn rn rn rnrn[/code]rn代码运行的输出结果是:rnReady StartrnT1 startrn但是public static AutoResetEvent allDone = new AutoResetEvent(true);不是应该不停的输出T1 start么?为什么只输出一次?求解答
MSDN中的AutoResetEvent构造函数中的示例代码
下面是msdn中AutoResetEvent构造函数中的示例代码:rn[code=C#]rnusing System;rnusing System.Threading;rnrnnamespace AutoResetEvent_Examplesrnrn class MyMainClassrn rn //Initially not signaled.rn const int numIterations = 100;rn static AutoResetEvent myResetEvent = new AutoResetEvent(false);rn static int number;rnrn static void Main()rn rn //Create and start the reader thread.rn Thread myReaderThread = new Thread(new ThreadStart(MyReadThreadProc));rn myReaderThread.Name = "ReaderThread";rn myReaderThread.Start();rnrn for(int i = 1; i , i);rn //Signal that a value has been written.rn myResetEvent.Set();rnrn //Give the Reader thread an opportunity to act.rn Thread.Sleep(0);rn rnrnrn[/code]rn时,就有可能出现读线程读出同一个数据的情况。rnrn请问这是什么原因?
c# AutoResetEvent 循环暂停 主界面卡死
AutoResetEvent eventPauseRequired = new AutoResetEvent(false);rn AutoResetEvent eventResumeRequired = new AutoResetEvent(false);rn //执行操作rn private void button1_Click(object sender, EventArgs e)rn rn for (int i = 0; i < dt_main.Rows.Count; i++)rn rn if (eventPauseRequired.WaitOne(0))rn rn eventResumeRequired.WaitOne();rn rn elsern rn ..............................rn eventPauseRequired.Set();rn rn rn以上是要执行的操作rn======================================================rn以下是接收外部程序发来的信息,收到信息则继续以上的操作rn public const int USER = 0x0400;rn public const int WM_CMM = USER + 10000;rnrn protected override void DefWndProc(ref System.Windows.Forms.Message m)rn rn switch (m.Msg)rn rn case WM_CMM: //处理消息rn if (m.WParam.ToInt32() == 0)rn rn eventResumeRequired.Set();rn rn break;rn default:rn base.DefWndProc(ref m);//调用基类函数处理非自定义消息。rn break;rn rn rnrn============================================rni=0执行完毕就卡死,求教各位。多谢!
【一句话解释一个技术点】ManualResetEvent
当你在某个例程中看到ManualResetEvent你可能会很好奇这是个什么东西,于是百度,发现了这样的解释ManualResetEvent 是一线程用来控制别一个线程的信号。然后看了例程一头雾水,那这篇文章就是来拯救你的。
AD620 使用问题
AD620 <em>使用</em><em>问题</em> AD620 <em>使用</em><em>问题</em> AD620 <em>使用</em><em>问题</em>
delphi 里 有类似 VS.NET 里的AutoResetEvent 类吗?
delphi 里 有类似 VS.NET 里的AutoResetEvent 类吗?rn通知正在等待的线程已发生事件
SVN 日常使用问题说明.doc
SVN 日常<em>使用</em><em>问题</em>说明 SVN 日常<em>使用</em><em>问题</em>说明 SVN 日常<em>使用</em><em>问题</em>说明
服务器端编程的十大性能问题
服务器端编程的十大性能<em>问题</em> <em>问题</em>一:过多的数据库调用 <em>问题</em>二:过多地<em>使用</em>同步 <em>问题</em>三:过度<em>使用</em>远程调用 <em>问题</em>四:错误地<em>使用</em>对象关系映射 <em>问题</em>五:内存泄漏 <em>问题</em>六:<em>使用</em>有<em>问题</em>的第三方代码/组件 <em>问题</em>七:对稀缺资源的<em>使用</em>存在浪费的情况 <em>问题</em>八:膨胀的Web前端 <em>问题</em>九:错误的缓存策略导致过度的垃圾收集 <em>问题</em>十:间歇性<em>问题</em>
delphi如何实现c#中的AutoResetEvent以及事件列表?
1 c#中的AutoResetEventrn[code=csharp]rnEventWaitHandle waitHandle_UpdateTagScreen = new AutoResetEvent(false);rnrn// 在A方法中设置阻塞当前线程,最多等待timeOut毫秒rnwaitHandle_UpdateTagScreen.WaitOne(timeOut);rnrn// 在B方法中让让当前线程结束阻塞状态rn// todornwaitHandle_UpdateTagScreen.Set();rn[/code]rnrndelphi中如何实现rnrn2 c#中的事件列表+=,-=rn[code=csharp]rn // 从事件列表里删除某事件响应事件rn OnPushButton -= Api_OnPushButton_AutoTurnOff;rnrn // 事件可以一直添加,按照添加的顺序执行rn OnPushButton += Api_OnPushButton_AutoTurnOff;rn OnPushButton += Api_OnPushButton_AutoTurnOff2;rn ...rn[/code]rn delphi中似乎只能指定一个:rn OnPushButton := Api_OnPushButton_AutoTurnOff;rn或者说也是可以实现的?
使用编号规则生成重复问题总结
<em>使用</em>编号规则生成重复<em>问题</em>总结<em>使用</em>编号规则生成重复<em>问题</em>总结<em>使用</em>编号规则生成重复<em>问题</em>总结<em>使用</em>编号规则生成重复<em>问题</em>总结
C# ThreadPool和join最基本操作示例
普通线程的创建,通过 委托ThreadStart对应的函数来执行相关操作; 通过线程池,可以直接从池中查找出空闲线程,让它执行委托WaitCallback对应函数来执行相关操作。<em>使用</em>时要与AutoResetEvent来并用,以在线程结束时通知主线程退出; <em>使用</em>线程池来找到一个线程执行函数,实质减少了new thread等过程。
C# 延时程序 delay
C# 延时 函数 方法, 事件 阻塞 系统 定时器 ,AutoResetEven
Java Applet应用简介
Applet<em>使用</em>简介 内容包括如何<em>使用</em>、嵌入标签<em>问题</em>、IE不支持Java2<em>问题</em>、数字签名<em>问题</em>等
Hql语句注意事项总结
Hql语句注意事项总结 1.在Hql中<em>使用</em>group by的<em>问题</em> 2.在count()中<em>使用</em>别名<em>问题</em> 3.关于Integer和Long的<em>问题</em> 4.关于参数是数组的<em>问题</em>
c语言约瑟夫问题
本程序<em>使用</em>循环链表实现约瑟夫<em>问题</em>,<em>使用</em>c语言编写,简单的演示了约瑟夫<em>问题</em>。
城市遍历问题(蚁群算法)
<em>使用</em>MATLAB解决城市遍历<em>问题</em>的源代码。适用于试图<em>使用</em>MATLAB解决此类<em>问题</em>的用户。
使用C#写u3d的脚本需要注意的问题
<em>使用</em>C#写u3d的脚本需要注意的<em>问题</em> <em>使用</em>C#写u3d的脚本需要注意的<em>问题</em> <em>使用</em>C#写u3d的脚本需要注意的<em>问题</em>
win8下解决pb不能使用问题
win8下解决pb不能<em>使用</em>的<em>问题</em>,win8下解决pb不能<em>使用</em>的<em>问题</em>。
变频器使用中应注意的问题
变频器<em>使用</em>中应注意的<em>问题</em> 变频器<em>使用</em>中应注意的<em>问题</em>
cognos 使用和安装过程中遇到的问题以及解决方法
cognos<em>使用</em>和安装过程遇到的<em>问题</em>,主要解决了一些安装和<em>使用</em>时候遇到的一下<em>问题</em>
仿真器与DSP开发一般常见问题
DSP仿真器开发<em>问题</em>,主要描述了DSP仿真器<em>使用</em>和<em>使用</em>过程可能出现的<em>问题</em>
迷宫问题的c语言实现
<em>使用</em>栈来实现迷宫<em>问题</em>的解答,欢迎<em>使用</em>.有<em>问题</em>请联系我.
画图板的使用应用问题,比较详细的介绍了它的使用
画图板的<em>使用</em><em>问题</em>,这里详细的介绍了画图板的<em>使用</em><em>问题</em>,其中源代码是经过调试之后的。
C#使用问题-环境变量的配置-运行问题
C#<em>使用</em><em>问题</em>-环境变量的配置-运行<em>问题</em> C#<em>使用</em><em>问题</em>-环境变量的配置-运行<em>问题</em>
简述PLC应用及使用中应注意的问题
简述PLC应用及<em>使用</em>中应注意的<em>问题</em> 简述PLC应用及<em>使用</em>中应注意的<em>问题</em>
FIsher判别给XOR问题分类
%%<em>使用</em>fisher判别给XOR<em>问题</em>分类 <em>使用</em>fisher判别给XOR<em>问题</em>分类
ulink2使用2
ulink2<em>使用</em>;ULINK2仿真器<em>使用</em><em>问题</em>总结.
java笔试面试题大汇总
Java 技术重点<em>问题</em>及常用<em>问题</em>的整合 比较全面 <em>使用</em>
寄存器的使用与寻址方式
寄存器的<em>使用</em>与寻址方式,常见寄存器<em>使用</em>的<em>问题</em>
myeclipse内存溢出问题解决方案
解决内存溢出的<em>问题</em>,在<em>使用</em>myeclipse时候,经常遇到内存溢出的<em>问题</em>。
解决XP远程访问出现的故障:“远程计算机需要网络级别身份验证
帮同事解决的另一个<em>问题</em>,<em>使用</em>mstsc远程服务,无法连接的<em>问题</em>。
Java路径问题
Java路径<em>问题</em>,解决Java安装及<em>使用</em><em>问题</em>的入门级指导
伺服使用问题
提供一般常见的伺服<em>问题</em>,伺服的设置<em>使用</em><em>问题</em>
HIbernate缓存
HIbernate的缓存<em>问题</em>,解决在<em>使用</em>hibernate时,运行速度差的<em>问题</em>。
NC120使用问题
NC120<em>使用</em><em>问题</em>
在jbuilder2006使用dwr的问题
在jbuilder2006<em>使用</em>dwr的<em>问题</em>
mac使用常用问题
mac<em>使用</em>常用<em>问题</em>
CBmpProc
CBmpProc<em>使用</em><em>问题</em>
网络工程师应该掌握的44个(路由器问题)知识要点
<em>问题</em>1 什么时候<em>使用</em>多路由协议 <em>问题</em>2 什么是访问表 <em>问题</em>3 什么时候<em>使用</em>路由再分配 <em>问题</em>4 什么是管理距离 ... 这些<em>问题</em>你都知道吗?不知道就赶快下载看看,还有更多<em>问题</em>等着你来解决
derby使用
讲述derby<em>使用</em><em>问题</em>
C# 线程监视器--Monitor---线程同步(二)
Monitor 类提供了同步对对象的访问机制,它通过单个线程授予对象锁来控制对象的访问,对象锁提供限制访问代码块,(通常称为临界区)的能力.当一个线程拥有对象锁时,其他任何线程都不能获取该锁,功能和 lock 关键字类似常用方法:示例代码:using System;nusing System.Collections.Generic;nusing System.Data.SqlClient;nusi...
集成运算放大器使用介绍
介绍集成运算放大器的分类、<em>使用</em>要点、调零<em>问题</em>、自激振荡<em>问题</em>以及运动保护<em>问题</em>
数据库问题
<em>使用</em>数据库遇到的各种<em>问题</em>汇总,包括登陆不了<em>问题</em>,连接不上等等<em>问题</em>,特别是初学者常常遇到的<em>问题</em>。
MyEclipse6.0与jdk版本问题
MyEclipse6.0<em>使用</em>的jdk版本冲突<em>问题</em>
LR问题集锦
LoadRunner<em>使用</em>遇到的<em>问题</em>集锦
ES和HADOOP使用问题和需求
ES和HADOOP<em>使用</em><em>问题</em>和需求
SYBASE数据库的使用及日常问题的解决方法
SYBASE数据库的<em>使用</em>及日常<em>问题</em>的解决方法
线上问题排查工具和手段
线上<em>问题</em>的排查方法及工具手段,对开发或者运维排查线上<em>问题</em>有很大帮助及<em>使用</em>排查<em>问题</em><em>使用</em>的工具介绍
电脑知识_日常总结
日常<em>使用</em>中遇到的<em>问题</em>
protel99se 使用的60个问题和解答
protel99se <em>使用</em>的60个<em>问题</em>和解答
notification问题
notification<em>问题</em>,供连接<em>使用</em>
使用iframe遇到的问题
应用场景介绍:nn1、需要在一个页面嵌入两个页面,假设叫做A和B,其中A一个还是跨域的nn2、B页面有个【通过】按钮,点击时后台ajax取数据id,然后刷新A和B页面nn<em>问题</em>1: 跨域的A页面无法获取A页面Dom元素nn<em>问题</em>2:ajax返回值不能被方法外部<em>使用</em>nn<em>问题</em>3:B页面无法获取父页面的方法(这个是我自己瞎搞出来的<em>问题</em>)nn代码如下图,然后分析解决我的<em>问题</em>nn<em>问题</em>1:这个跨域<em>问题</em>确实没法解决...
fastButton 比click更快触发,解决tap触发两次问题
fastButton可以解决两个<em>问题</em>:1.click在移动端<em>使用</em>时有300ms的延时,<em>使用</em>fastButton可以降低到10ms;2.tap在安卓端<em>使用</em>时会出现触发两次<em>问题</em>,<em>使用</em>fastButton可以解决这个<em>问题</em>。<em>使用</em>说明在压缩包中。
VB.net曲线读取代码
<em>使用</em>MSchart将ACCESS数据库中的一组数绘制成XY曲线,可解决MSchart<em>使用</em>中的<em>问题</em>和数据库读取<em>问题</em>。
玩转AWR oracle优化
<em>使用</em>awr处理oracle资源占用<em>问题</em>,清晰处理sql<em>问题</em>。<em>使用</em>oracle裸数据进行优化。
Mathematica_10.3.0_Keygen下载
大家懂得,Mathematica 10.3.0注册机,亲测可用 相关下载链接:[url=//download.csdn.net/download/pojlover/9378435?utm_source=bbsseo]//download.csdn.net/download/pojlover/9378435?utm_source=bbsseo[/url]
OA系统+struts2下载
基于WEB环境设计实现一个基于STRUTS2的B/S结构的OA系统,系统管理、信息交流、日常事务、项目运作、事务流转等功能。 相关下载链接:[url=//download.csdn.net/download/liumenghuan/1964756?utm_source=bbsseo]//download.csdn.net/download/liumenghuan/1964756?utm_source=bbsseo[/url]
navicat9.0.10_mysql+配套注册机下载
测试了很多个终于打包完成了这个完美版。WIN7上可以完美使用。navicat9.0.10是目前最新版 注册码也是可用的,打包给大家免的大家一个个试了。 相关下载链接:[url=//download.csdn.net/download/kkloop16/2544534?utm_source=bbsseo]//download.csdn.net/download/kkloop16/2544534?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 区块链问题 ios视频开发问题
我们是很有底线的