手机
当前位置:查字典教程网 >编程开发 >C#教程 >WinForm窗体调用WCF服务窗体卡死问题
WinForm窗体调用WCF服务窗体卡死问题
摘要:窗体启动会启动一个程序主线程,如果在From_Load()方法中调用服务,调用服务操作会阻塞主程序。只需要将调用服务的操作放到其他线程中处理...

窗体启动会启动一个程序主线程,如果在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();

}

【WinForm窗体调用WCF服务窗体卡死问题】相关文章:

C#中判断某类型是否可以进行隐式类型转换

C#启动windows服务方法的相关问题分析

C# Winform 调用系统接口操作 INI 配置文件的代码

C#中计算时间差中的小数问题解决

基于Silverlight打印的使用详解,是否为微软的Bug问题

C# Winform 禁止用户调整ListView的列宽

C# 无边框窗体之窗体移动实现代码

C# WinForm窗口最小化到系统托盘

Winform跨线程操作的简单方法

关于c#二叉树的实现

精品推荐
分类导航