@@ -68,32 +68,41 @@ net::~net() NOEXCEPT
6868// I/O factories.
6969// ----------------------------------------------------------------------------
7070
71- acceptor::ptr net::create_acceptor () NOEXCEPT
71+ // inbound/server
72+ acceptor::ptr net::create_acceptor (size_t maximum) NOEXCEPT
7273{
73- return emplace_shared<acceptor>(log, strand (), service (),
74+ return emplace_shared<acceptor>(log, strand (), service (), maximum,
7475 accept_suspended_);
7576}
7677
77- connector::ptr net::create_connector (bool seed) NOEXCEPT
78- {
79- const auto timeout = seed ? settings_.outbound .seeding_timeout () :
80- settings_.connect_timeout ();
81-
82- return emplace_shared<connector>(log, strand (), service (), timeout,
83- connect_suspended_);
84- }
85-
78+ // outbound (batch)
8679connectors_ptr net::create_connectors (size_t count) NOEXCEPT
8780{
8881 const auto connects = to_shared<connectors>();
8982 connects->reserve (count);
9083
84+ const auto maximum = settings_.outbound .maximum_request ;
9185 for (size_t connect{}; connect < count; ++connect)
92- connects->push_back (create_connector ());
86+ connects->push_back (create_connector (maximum ));
9387
9488 return connects;
9589}
9690
91+ // manual/outbound
92+ connector::ptr net::create_connector (size_t maximum) NOEXCEPT
93+ {
94+ return emplace_shared<connector>(log, strand (), service (),
95+ settings_.connect_timeout (), maximum, connect_suspended_);
96+ }
97+
98+ // seed
99+ connector::ptr net::create_connector () NOEXCEPT
100+ {
101+ return emplace_shared<connector>(log, strand (), service (),
102+ settings_.outbound .seeding_timeout (),
103+ settings_.outbound .maximum_request , connect_suspended_);
104+ }
105+
97106// Start sequence.
98107// ----------------------------------------------------------------------------
99108
0 commit comments