如题,C#环境下,遇到问题如下,**假设我现在执行的线程依次为pro1,2,3,这时候我通过窗体控件新建了线程pro4并且想让他在pro3后运行(插入PRO4时PRO3未结束)请问该如何处理?**
具体解释: 我的线程创建函数在timealgorithm()方法中,会依次创建线程
整体处于go按钮的点击触发方法中,如下代码:private void go_Click(object sender, EventArgs e)
{
...
while (judgeall(finish) == false)
{
timealgorithm();
}
...
//here
}
如果我在here处添加了字符回显于richtestbox控件,他会在线程开始之前立刻显示
(ps. 所以顺带求问如何监控多个重名线程状态是否结束,我是在一个循环里创建线程,创建代码如下:Thread pro = new Thread(new ParameterizedThreadStart(proin[x].Threadbuild));
pro.Start(timet);
)
我个人由于基础是C语言,开始考虑使用死循环解决,用一个按钮结束循环,但是学习C#发现按钮触发方法中死循环会直接卡死框体,故求问解决方法
关于C#异步多线程编写时插入新线程的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- threenewbee 2017-09-05 01:17关注
用事件等待
定义一个成员变量
AutoResetEvent mEvent=new AutoResetEvent(false);
在线程3里面
mEvent.Set();
在线程4开头加上
mEvent.WaitOne();
则线程4停在这一行,直到线程3完成才继续执行更多信息,你可以查msdn
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 模电中二极管,三极管和电容的应用
- ¥15 关于模型导入UNITY的.FBX: Check external application preferences.警告。
- ¥15 气象网格数据与卫星轨道数据如何匹配
- ¥100 java ee ssm项目 悬赏,感兴趣直接联系我
- ¥15 微软账户问题不小心注销了好像
- ¥15 x264库中预测模式字IPM、运动向量差MVD、量化后的DCT系数的位置
- ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
- ¥20 关于web前端如何播放二次加密m3u8视频的问题
- ¥15 使用百度地图api 位置函数报错?
- ¥15 metamask如何添加TRON自定义网络