首页 新闻 会员 周边 捐助

新线程中调用的函数没返回,怎么结束线程

0
悬赏园豆:20 [待解决问题]

新开的一个线程,里面需要调用TcpClient的connect函数,这个函数没返回的情况下,怎么样结束当前的线程。

蓝紫蓝紫的主页 蓝紫蓝紫 | 初学一级 | 园豆:182
提问于:2020-02-08 14:38
< >
分享
所有回答(5)
0

用callrable呗,没返回就抛出异常或返回啥标识,然后停掉该线程

lzj123 | 园豆:158 (初学一级) | 2020-02-08 14:56
0

connect是同步的,必须等待返回。要不就把这些放到另一个进程处理,kill process。
要不就是换成beginconnect,调用socket close的时候,beginConnect会返回。
正确处理好线程与资源的问题,呃,学这些没用。
用成熟的库吧,比如supersocket。

日暮青色 | 园豆:495 (菜鸟二级) | 2020-02-08 14:57

换成beginconnect之后,好操作多了。多谢。

支持(0) 反对(0) 蓝紫蓝紫 | 园豆:182 (初学一级) | 2020-02-10 12:15
0

试试

Thread.CurrentThread.Abort();
dudu | 园豆:29642 (高人七级) | 2020-02-08 15:04
0
猝不及防 | 园豆:2878 (老鸟四级) | 2020-02-10 09:48

我去试一下,多谢

支持(0) 反对(0) 蓝紫蓝紫 | 园豆:182 (初学一级) | 2020-02-10 12:14
0

直接用线程方法把线程about中断即可。。。

lzhdim | 园豆:650 (小虾三级) | 2020-02-26 17:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册