Skip to content

Commit

Permalink
SC route: keep listener open.
Browse files Browse the repository at this point in the history
  • Loading branch information
maxsharabayko committed Apr 19, 2024
1 parent d9f0e5c commit 234b705
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions xtransmit/route.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,15 +85,18 @@ void xtransmit::route::run(const vector<string>& src_urls, const vector<string>&
parsed_dst_urls.emplace_back(url);
}


try {
const bool write_stats = cfg.stats_file != "" && cfg.stats_freq_ms > 0;
// make_unique is not supported by GCC 4.8, only starting from GCC 4.9 :(
unique_ptr<socket::stats_writer> stats = write_stats
? unique_ptr<socket::stats_writer>(new socket::stats_writer(cfg.stats_file, cfg.stats_format, milliseconds(cfg.stats_freq_ms)))
: nullptr;

shared_sock dst = create_connection(parsed_dst_urls);
shared_sock src = create_connection(parsed_src_urls);
shared_sock_t listening_sock_a; // A shared pointer to store a listening socket for multiple connections.
shared_sock_t listening_sock_b; // A shared pointer to store a listening socket for multiple connections.
shared_sock dst = create_connection(parsed_dst_urls, listening_sock_a);
shared_sock src = create_connection(parsed_src_urls, listening_sock_b);

if (stats)
{
Expand Down

0 comments on commit 234b705

Please sign in to comment.