public IAsyncOperation<bool> Connect()
{
return Task.Run(() =>
{
bool ret = false;
if (Monitor.TryEnter(_connectingLock))
{
try
{
if (!IsConnected)
{
_signalingSocketChannel.ConnectToSignalingServer(null);
if (IsConnected) Register();
}
}
catch
{
}
finally
{
Monitor.Exit(_connectingLock);
}
}
return ret;
}).AsAsyncOperation();
}