社区
C#
帖子详情
线程的用法
shadom2008
2009-01-23 03:31:51
Thread ts= new Thread(new ThreadStart(send));
ts.Start();
Thread.Sleep(1000 * 120);
ts = new Thread(new ThreadStart(RptReceive));
ts.Start();
小弟第一次遇到线程,这样写语法对不对?能不能实现调用send方法后,线程睡2分钟,醒来后再调用RptReceive!
如果不对,求正确方法,谢谢!
...全文
140
7
打赏
收藏
线程的用法
Thread ts= new Thread(new ThreadStart(send)); ts.Start(); Thread.Sleep(1000 * 120); ts = new Thread(new ThreadStart(RptReceive)); ts.Start(); 小弟第一次遇到线程,这样写语法对不对?能不能实现调用send方法后,线程睡2分钟,醒来后再调用RptReceive! 如果不对,求正确方法,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sunrobust
2009-01-23
打赏
举报
回复
顺序调用, 可以啊。。。
qiqundelang
2009-01-23
打赏
举报
回复
例子多的很,摆渡一哈
shadom2008
2009-01-23
打赏
举报
回复
[Quote=引用 2 楼 king19840811 的回复:]
你这是不是调用send方法后,醒来调用RptReceive
是在调用send方法后。主线程睡眠2分钟然后调用RptReceive
[/Quote]
正是这个意思
本来是这样写的
private void tDisposeMessage()
{
Message me = new Message();
if (me.Iscon)
{
me.send();
Thread.Sleep(120*1000);
me.RptReceive();
me.SMreceive();
}
}
这样就能实现先send,睡2分钟后RptReceive(),然后SMreceive();???
shadom2008
2009-01-23
打赏
举报
回复
[Quote=引用 1 楼 sunrobust 的回复:]
Thread ts= new Thread(new ThreadStart(send)); //这是新开了一个子线程, 并且调用了send方法
Thread.Sleep(1000 * 120); //这是让当前线程睡眠120s, 上面新开的子线程可能还在执行send方法, 也可能执行完send方
// 法后自动退出了
ts = new Thread(new ThreadStart(RptReceive)); //这是又开了一个子线程去receive了, 和以前的主线程,子线程没有任何关系
lz这…
[/Quote]
自己看看都不对,本来也是向您说的这么写的,感觉这样写没和“线程”扯上关系。汗
private void tDisposeMessage()
{
Message me = new Message();
if (me.Iscon)
{
Thread ts= new Thread(new ThreadStart(me.send));
ts.Start();
Thread.Sleep(1000 * 120);
ts = new Thread(new ThreadStart(me.RptReceive));
//me.send();
//Thread.Sleep(120*1000);
//me.RptReceive();
//me.SMreceive();
}
}
雪狐
2009-01-23
打赏
举报
回复
楼主启的是两个线程。。。
雪狐
2009-01-23
打赏
举报
回复
晕,去MSDN上抄啥。没啥问题。。。
king19840811
2009-01-23
打赏
举报
回复
你这是不是调用send方法后,醒来调用RptReceive
是在调用send方法后。主线程睡眠2分钟然后调用RptReceive
sunrobust
2009-01-23
打赏
举报
回复
Thread ts= new Thread(new ThreadStart(send)); //这是新开了一个子线程, 并且调用了send方法
Thread.Sleep(1000 * 120); //这是让当前线程睡眠120s, 上面新开的子线程可能还在执行send方法, 也可能执行完send方
// 法后自动退出了
ts = new Thread(new ThreadStart(RptReceive)); //这是又开了一个子线程去receive了, 和以前的主线程,子线程没有任何关系
lz这样的方法不对。
如果没有特别要求,完全不用多线程:
send();
Thread.Sleep(1000 * 120);
RptReceive();
WPF多
线程
演示
WPF多
线程
演示
Java.Concurrency.in.Practice.pdf
Java.Concurrency.in.Practice.pdf
qt中
线程
的使用方法
qt中
线程
的使用方法
Qt TCP/Ip 网络通信的两种
用法
-常规
用法
+多
线程
用法
如下图所示,TcpServer 的ThreadID(即主
线程
ID:20748)与Object::recvData的 ThreadId、Object::sendData的 ThreadId (即次
线程
ID:21112)确实不同。因此可以将大量的耗时的业务放在Object类中实现。基于多
线程
的
用法
有两种,第一种是子类化QThread,重写run函数,在run函数中用while或for语句实现多
线程
业务;第二种是使用事件循环实现多
线程
。本文介绍第二种使用方法。
最全面的Java多
线程
用法
解析
最全面的Java多
线程
用法
解析,如果你对Java的多
线程
机制并没有深入的研究,那么本文可以帮助你更透彻地理解Java多
线程
的原理以及使用方法。 1、创建
线程
在Java中创建
线程
有两种方法:使用Thread类和使用Runnble接口。在使用Runnable接口时需要建立一个Thread实例。因此,无论是通过Thread类还是Runnable接口建立
线程
,都需要建立Thread类或它的子
C#
111,130
社区成员
642,542
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章