社区
C#
帖子详情
请问下,怎么样实现一个线程来调用控制多个线程的执行
sxl_88
2015-02-11 09:06:12
在C# Winfrom项目中,有一个主窗体(mainfrom)和三个子窗体(subfrom1、subfrom2、subfrom3).
在主窗体(mainfrom)中有一个进程(用来控制调用三个子窗体中的进程)。在三个子窗体中分别各有一个进程(用于控制执行各自子窗体中的任务)。
请问怎么样实现在主窗体中的进程来控制调用三个子窗体中进程的执行,可以动态控制调用这三个子窗体中的进程的执行。
有没有相关的DEMO或参考资料,谢谢。
...全文
222
9
打赏
收藏
请问下,怎么样实现一个线程来调用控制多个线程的执行
在C# Winfrom项目中,有一个主窗体(mainfrom)和三个子窗体(subfrom1、subfrom2、subfrom3). 在主窗体(mainfrom)中有一个进程(用来控制调用三个子窗体中的进程)。在三个子窗体中分别各有一个进程(用于控制执行各自子窗体中的任务)。 请问怎么样实现在主窗体中的进程来控制调用三个子窗体中进程的执行,可以动态控制调用这三个子窗体中的进程的执行。 有没有相关的DEMO或参考资料,谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
於黾
2015-02-12
打赏
举报
回复
进程如同公司,线程如同员工,主线程就好比领导 领导负责对外交涉拉业务(UI),和管理员工(启动线程) 而不需要专门派一个员工去死盯着另外3个员工,那是闲的
threenewbee
2015-02-11
打赏
举报
回复
就你的需求来说,根本就用不着多线程。用一个状态变量在不同窗体间共享就可以了。
以专业开发人员为伍
2015-02-11
打赏
举报
回复
窗体之间的通讯,通过窗体的属性、方法、事件来通讯,也就是通过窗体对象之间的正常关系来通讯。比如说A窗口调用了B窗口的a方法,或者B窗口触发的c事件可以被A窗口监听并处理,等等。 跟什么线程没有什么直接关系。线程是具体干什么事儿的时候才需要考虑的,例如需要把1+2+3的结果给计算出来,可是计算1+2只后需要把中间结果推送到电灯泡上去“闪三下”,然后再计算3+3,这时候就可以在子线程中控制电灯泡,而不用阻塞主线程计算3+3的动作。这个“控制电灯泡”的动作可能需要5ms,也可能需要250ms,总之不会阻塞计算,而且做完了该做的事情就自动结束了(实际上应该从系统线程中来分配线程,因此所谓“线程结束”的含义就是在执行完“点电灯泡”的用户定义方法只后,.net会自动将线程归还到系统线程池中)。 不要没事也编出什么“一个线程控制3个线程”来。需要并发调用某几个方法,就可以使用线程。方法在一瞬间执行完,线程也就结束了。
以专业开发人员为伍
2015-02-11
打赏
举报
回复
线程在启动只后“一瞬间”就结束了。有事情可干,可能启动50个线程也不算多。没有事情可干的事情,你启动3个线程在那里“循环、阻塞”也是没有意义的。
winnowc
2015-02-11
打赏
举报
回复
不同的需求要使用不同的同步方式,没有具体的需求,那就给一个通用的线程教程:
http://www.albahari.com/threading/part2.aspx
。总的来说,一个是保护共享资源不被多个线程同时修改,另一个是控制线程的阻塞和继续。一般就是lock和xxxResetEvent(Slim)用的比较多。也可看下
http://bbs.csdn.net/topics/390978972#post-398844623
是之前类似的问题。
SmileSkyNet
2015-02-11
打赏
举报
回复
你这个问法我当你已经会一个线程的用法,那么。。一个线程控制三个。。。这个问题好象有点问题,如果你要在主窗体分别控制三个子窗体中的线程,你可以写三个方法(或一个方法传不同参数)来调用 比如: BaseForm:T1() Form1:BaseForm T1(){} Form2:BaseForm T1(){} Form3:BaseForm T1(){} MainForm: void CallT(BaseForm f) { f.T1(); } private void button1_Click(...) { Form1 f=new Form1(); CallT(f); } private void button2_Click(...) { Form2 f=new Form2(); CallT(f); } private void button3_Click(...) { Form3 f=new Form3(); CallT(f); }
sxl_88
2015-02-11
打赏
举报
回复
能不能再具体点,谢谢
sxl_88
2015-02-11
打赏
举报
回复
当然是线程了
娃都会打酱油了
2015-02-11
打赏
举报
回复
到底是进程还是线程? 试试Mutex?
Android多
线程
断点续传下载+在线播放音乐
Android多
线程
断点续传下载+在线播放音乐,我想很多小白都想要。
C/C++
实现
多
线程
与
线程
同步
多
线程
中的
线程
同步可以使用,CreateThread,CreateMutex 互斥锁
实现
线程
同步,通过临界区
实现
线程
同步,Semaphore 基于信号
实现
线程
同步,CreateEvent 事件对象的同步,以及
线程
函数传递单一参数与
多个
参数的
实现
方式。其主要是
线程
函数中
调用
的参数会与下
一个
线程
函数结构相冲突,解决的办法时在每次进入
线程
函数时,自己拷贝一份,每个人使用自己的那一份,才可以避免此类事件的发生,同时最好配合
线程
同步一起使用,如下时
线程
扫描器的部分代码片段。通过互斥锁,同步
执行
两个
线程
函数。
python 多
线程
的运用,
一个
线程
调用
另
一个
线程
,守护
线程
,
线程
池的用法、多
线程
锁的运用
java适合多
线程
编程,python适合多进程编程。因为python的多
线程
底层逻辑有同步锁,造成并发效果不佳。python的多进程可以利用多核CPU的计算优势进行并发,所以任务侧重CPU的计算就用多进程,任务侧重大量io的读取和写入就用多
线程
from threading import Thread import time def work(a,b): #多
线程
需要
执行
的任务 print(a,b) time.sleep(3) threads=[] #存储多
线程
的列表 for i in
多个
线程
调用
同
一个
线程
函数
多个
线程
调用
同
一个
线程
函数 悬赏分:50 - 解决时间:2007-12-11 13:59 如题,能这样吗?因为有很
多个
操作,但是这些操作都是一样的,所以想用相同的
线程
函数,但是感觉运行时
线程
还是
一个
一个
运行,并没有提高速度,应该是我理解错了!!老大些帮帮忙,给个建议 问题补充: 我的意思是
线程
处理函数,刚刚找了点资料,觉得这想法没有错,只要
线程
里面不用全局或者静态变量
Linux下pthread
实现
多
线程
程序(
一个
线程
控制
两个
线程
的暂停、恢复、终止)
一、功能要求 使用三个
线程
,
线程
1用来监听用户输入和作为其他两个
线程
的监听器,
线程
2的主要内容为每隔一段时间,输出“hello 2”字符串,
线程
3的主要内容为每隔一段时间,输出“hello 3”字符串。根据输入的数据来改变
线程
1和
线程
2的状态
实现
对
线程
的创建、暂停、恢复、终止等操作,通过输入数字来进行
控制
,具体来说,创建后默认是暂停的, 1恢复
线程
2,2暂停
线程
2,3终止
线程
2, 5恢复
线程
3,6暂停
线程
3,7终止
线程
3。 其中,恢复与暂停可以反复交替进行。 二、主要函数 pthread_cr
C#
111,120
社区成员
642,537
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章