【发布时间】:2019-01-24 12:03:44
【问题描述】:
加载表单后,GetItemsnaliv() 方法中会启动一个计时器,该方法连接到远程 OPC 服务器并检索所需的数据。 代码:
bool GetItemsNaliv()
{
IsWork2 = true;
try {
if (_opcServer2 != null && !_opcServer2.IsConnected) {
_opcServer2.Connect(url2, new Opc.ConnectData(new System.Net.NetworkCredential()));
}
}
catch (Exception ex)
{
//MessageBox.Show(ex.Message);
IsWork2 = false;
return false;
}
如果 OPC-server 断开连接或由于某种原因突然重新启动,程序就会冻结,只能通过 Manager 杀死。错误出现在这一行:
_opcServer2.Connect(url2, new Opc.ConnectData(new System.Net.NetworkCredential()));
如果连接丢失并开始重新连接,如何避免程序挂起?
【问题讨论】: