[Modify] Polish it
This commit is contained in:
parent
aea4f83186
commit
8961af9274
@ -2190,15 +2190,31 @@ namespace WebSocketSharp
|
|||||||
if (_readyState != WebSocketState.Open)
|
if (_readyState != WebSocketState.Open)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (!send (frameAsBytes))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
var receivePong = _receivePong;
|
var receivePong = _receivePong;
|
||||||
if (receivePong == null)
|
if (receivePong == null)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
lock (_forPing) {
|
||||||
|
try {
|
||||||
|
receivePong.Reset ();
|
||||||
|
|
||||||
|
lock (_forState) {
|
||||||
|
if (_readyState != WebSocketState.Open) {
|
||||||
|
_logger.Error ("The state of the connection has been changed.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!sendBytes (frameAsBytes))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
return receivePong.WaitOne (timeout);
|
return receivePong.WaitOne (timeout);
|
||||||
}
|
}
|
||||||
|
catch (ObjectDisposedException) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// As server, used to broadcast
|
// As server, used to broadcast
|
||||||
internal void Send (
|
internal void Send (
|
||||||
|
Loading…
Reference in New Issue
Block a user