| 21 | } |
| 22 | |
| 23 | bool WaitUntilConnectable(const TString& host, ui16 port, TDuration timeout) { |
| 24 | const TInstant deadline = timeout.ToDeadLine(); |
| 25 | |
| 26 | for (size_t i = 1; Now() < deadline; ++i) { |
| 27 | const TDuration waitTime = TDuration::MilliSeconds(100) * i * i; |
| 28 | SleepUntil(Min(Now() + waitTime, deadline)); |
| 29 | |
| 30 | if (TryConnect(host, port, waitTime)) { |
| 31 | return true; |
| 32 | } |
| 33 | } |
| 34 | |
| 35 | return false; |
| 36 | } |
| 37 | } |
nothing calls this directly
no test coverage detected