Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Signalr 应用程序从睡眠中恢复时崩溃_Signalr_Azure Mobile Services - Fatal编程技术网

Signalr 应用程序从睡眠中恢复时崩溃

Signalr 应用程序从睡眠中恢复时崩溃,signalr,azure-mobile-services,Signalr,Azure Mobile Services,我正在使用xamarin进行跨平台应用程序开发。我们使用asure移动服务连接数据库。基本上,这个应用程序是为了聊天,所以我们使用了signar和.NET Framework。当应用程序在一段时间(比如60秒)后从睡眠中出现时,它会崩溃。有没有办法用信号器连接回去。信号器似乎有问题。我到底需要在哪里更新客户端或服务器端的代码。 客户端代码 public class SignalRClient { private static string CONNECTION_URL

我正在使用xamarin进行跨平台应用程序开发。我们使用asure移动服务连接数据库。基本上,这个应用程序是为了聊天,所以我们使用了signar和.NET Framework。当应用程序在一段时间(比如60秒)后从睡眠中出现时,它会崩溃。有没有办法用信号器连接回去。信号器似乎有问题。我到底需要在哪里更新客户端或服务器端的代码。 客户端代码

public class SignalRClient
    {
        private  static string CONNECTION_URL = "http://";
        private static TimeSpan CONNECT_TIMEOUT = new TimeSpan(0, 0, 30); 
        private readonly  HubConnection _hubConnection;
        private  readonly IHubProxy _chatHubProxy;
        private static string AuthToken = "";
        public  string UserID;
        public event SignalRConnectionStateChangedDelegate SignalRConnectionStateChangedEvent;

        public SignalRClient(string authToken)
        {

            AuthToken = authToken;

            _hubConnection = new HubConnection(CONNECTION_URL);
            _hubConnection.Headers["xauth"] = AuthToken;
            _hubConnection.TransportConnectTimeout = CONNECT_TIMEOUT;
            _hubConnection.Error += ex =>
            {
                if (SignalRConnectionStateChangedEvent != null)
                {

                    _hubConnection.Stop();
                    SignalRConnectionStateChangedEvent("Error :" + ex.Message);
                }
            };

            _chatHubProxy = _hubConnection.CreateHubProxy("ChatServer");

        }

        public async Task Connect(string UserID)
        {

            if (_hubConnection.State != ConnectionState.Connected)
            {

                try
                {
                    await _hubConnection.Start();

                    _hubConnection.StateChanged += (connectionState) =>
                    {
                        if (SignalRConnectionStateChangedEvent != null)
                        {
                            SignalRConnectionStateChangedEvent(connectionState.NewState.ToString().ToLower());
                        }
                    };
                } 
                catch (Exception ex)
                {
                    var message = ex.Message;
                }

请添加您的代码您可以检查代码现在“应用程序崩溃”是有点模糊。使用堆栈跟踪等发布异常。