#include "s4u-tracker.hpp"
#include <algorithm>
-#include <xbt/RngStream.h>
XBT_LOG_NEW_DEFAULT_CATEGORY(s4u_bt_tracker, "Messages specific for the tracker");
try {
deadline = std::stod(args[1]);
} catch (const std::invalid_argument&) {
- throw std::invalid_argument(std::string("Invalid deadline:") + args[1].c_str());
+ throw std::invalid_argument("Invalid deadline:" + args[1]);
}
xbt_assert(deadline > 0, "Wrong deadline supplied");
- stream = simgrid::s4u::this_actor::get_host()->extension<HostBittorrent>()->getStream();
-
mailbox = simgrid::s4u::Mailbox::by_name(TRACKER_MAILBOX);
XBT_INFO("Tracker launched.");
while (tried < max_tries) {
do {
next_peer = known_peers.begin();
- std::advance(next_peer, RngStream_RandInt(stream, 0, nb_known_peers - 1));
+ std::uniform_int_distribution<int> dist(0, nb_known_peers - 1);
+ std::advance(next_peer, dist(generator));
} while (ta->getPeers().find(*next_peer) != ta->getPeers().end());
ta->addPeer(*next_peer);
tried++;