WinForm窗体调用WCF WinForm窗体调用WCF服务窗体卡死问题

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

WinForm窗体调用WCF WinForm窗体调用WCF服务窗体卡死问题

  2021-03-19 我要评论
想了解WinForm窗体调用WCF服务窗体卡死问题的相关内容吗,在本文为您仔细讲解WinForm窗体调用WCF的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:WinForm,窗体调用,WCF,下面大家一起来学习吧。
窗体启动会启动一个程序主线程,如果在From_Load()方法中调用服务,调用服务操作会阻塞主程序。

只需要将调用服务的操作放到其他线程中处理就可以解决这个问题。

比如:
复制代码 代码如下:

Thread ServiceThread=null;
public void TestForm_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
ServiceThread = new Thread(new ThreadStart(RegService));
ServiceThread.Start();
}
private void RegService()
{
//这里实现注册服务调用服务操作
}

注意:开启了线程要记得关闭,不然当关闭该窗体时其主进程关不掉,因为还有线程存在。可以在FromClosed()方法里将该线程关闭。
复制代码 代码如下:

private void TestForm_FormClosed(object sender, FormClosedEventArgs e)
{
ServiceThread.Abort();
Application.Exit();
}

猜您喜欢

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们