Skip to content

Commit 0750eee

Browse files
remove unnecessary flag, use async call for ping
1 parent ddd59f4 commit 0750eee

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

src/tarantool.client/LogicalConnectionManager.cs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,10 @@ public class LogicalConnectionManager : ILogicalConnection
1717

1818
private LogicalConnection _droppableLogicalConnection;
1919

20-
private readonly ManualResetEvent _connected = new ManualResetEvent(false);
20+
private readonly ManualResetEvent _connected = new ManualResetEvent(true);
2121

2222
private readonly AutoResetEvent _reconnectAvailable = new AutoResetEvent(true);
2323

24-
private bool _onceConnected;
25-
2624
private Timer _timer;
2725

2826
private int _disposing;
@@ -77,8 +75,6 @@ public async Task Connect()
7775

7876
_connected.Reset();
7977

80-
_onceConnected = true;
81-
8278
_clientOptions.LogWriter?.WriteLine($"{nameof(LogicalConnectionManager)}: Connecting...");
8379

8480
var _newConnection = new LogicalConnection(_clientOptions, _requestIdCounter);
@@ -111,7 +107,10 @@ private void CheckPing()
111107
return;
112108
}
113109

114-
Task.WaitAny(SendRequestWithEmptyResponse(_pingRequest));
110+
// suppress for fire and forget behaviour
111+
#pragma warning disable 4014
112+
SendRequestWithEmptyResponse(_pingRequest);
113+
#pragma warning restore 4014
115114
}
116115
finally
117116
{
@@ -124,7 +123,7 @@ private void CheckPing()
124123

125124
public bool IsConnected()
126125
{
127-
if (!_onceConnected || !_connected.WaitOne(_connectionTimeout))
126+
if (!_connected.WaitOne(_connectionTimeout))
128127
{
129128
return false;
130129
}

0 commit comments

Comments
 (0)