关于线程的问题,在线等

jingkingsoft 2005-03-15 12:06:27
我在Socket服务器端想设置:当收到有人连接请求时,则在EndAccept方法之后获得新的Socket,并开启一个线程不间断接受数据
private void On_Accept(Object Sender,EventArgs e)
{
socket receiveSocket=new socket(new socketstart(ObjectReceiver.BeginReceiveData));
receiveSocket.Start();
}
但是,事实上receiveSocket是一个局部变量,在函数On_Accept执行完成之后会不会自动被释放掉?这个县城是否会被迫中止执行?
...全文
98 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yezie 2005-03-15
  • 打赏
  • 举报
回复
会等线程执行结束后中止掉,好像是这样
haoco 2005-03-15
  • 打赏
  • 举报
回复
up
jingkingsoft 2005-03-15
  • 打赏
  • 举报
回复
唉,暂时地解决办法,定义终端注册数量的终端Object数组,该Object里面包含相关的发送和接收thread。连接一个,初始化一个,执行一个。退出的时候在Object的Close()方法里面包含退出线程的代码。
很明显,解决了问题,但是相对的,很不灵活,而且占资源。
求更好的解决办法。
jingkingsoft 2005-03-15
  • 打赏
  • 举报
回复
那么,岂不是这样的线程都没有办法管理了?
如果主程序退出,很有可能这些线程还在继续执行。我想调用Abort(),但是不知道给谁调用,因为这个对象本身在函数里面创建之后就没法再引用了。

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧