summaryrefslogtreecommitdiffstats
path: root/fnet
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@yahooinc.com>2022-11-03 20:31:10 +0100
committerTor Egge <Tor.Egge@yahooinc.com>2022-11-03 20:31:10 +0100
commitedff9072ff3c5317016b3910b621bbd53efb03a7 (patch)
tree06f192cb072798c1ca54660983ea6c2070ff48eb /fnet
parent18cc4a249a4d1cf68fb6afac98fb65528dccf25d (diff)
Slow down when getting too far ahead of server.
Diffstat (limited to 'fnet')
-rw-r--r--fnet/src/tests/connection_spread/connection_spread_test.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/fnet/src/tests/connection_spread/connection_spread_test.cpp b/fnet/src/tests/connection_spread/connection_spread_test.cpp
index f1eac229c89..0d9c0cc6e18 100644
--- a/fnet/src/tests/connection_spread/connection_spread_test.cpp
+++ b/fnet/src/tests/connection_spread/connection_spread_test.cpp
@@ -74,6 +74,13 @@ TEST_F("require that connections are spread among transport threads", Fixture)
std::vector<FNET_Connection *> connections;
for (size_t i = 0; i < 256; ++i) {
std::this_thread::sleep_for(1ms);
+ if (i > f1.server.GetNumIOComponents() + 16) {
+ /*
+ * tcp listen backlog is limited (cf. SOMAXCONN).
+ * Slow down when getting too far ahead of server.
+ */
+ std::this_thread::sleep_for(10ms);
+ }
connections.push_back(f1.client.Connect(spec.c_str(), &f1.streamer));
ASSERT_TRUE(connections.back());
}