Remove some pre-C++11-style workarounds

pull/12284/head
Vijay Pai 8 years ago
parent 12bc68ea71
commit 6defb325d9
  1. 28
      test/cpp/qps/client.h
  2. 12
      test/cpp/qps/interarrival.h

@ -369,12 +369,11 @@ class ClientImpl : public Client {
ClientImpl(const ClientConfig& config,
std::function<std::unique_ptr<StubType>(std::shared_ptr<Channel>)>
create_stub)
: cores_(gpr_cpu_num_cores()),
channels_(config.client_channels()),
create_stub_(create_stub) {
: cores_(gpr_cpu_num_cores()), create_stub_(create_stub) {
for (int i = 0; i < config.client_channels(); i++) {
channels_[i].init(config.server_targets(i % config.server_targets_size()),
config, create_stub_, i);
channels_.emplace_back(
config.server_targets(i % config.server_targets_size()), config,
create_stub_, i);
}
ClientRequestCreator<RequestType> create_req(&request_,
@ -388,20 +387,11 @@ class ClientImpl : public Client {
class ClientChannelInfo {
public:
ClientChannelInfo() {}
ClientChannelInfo(const ClientChannelInfo& i) {
// The copy constructor is to satisfy old compilers
// that need it for using std::vector . It is only ever
// used for empty entries
GPR_ASSERT(!i.channel_ && !i.stub_);
}
void init(const grpc::string& target, const ClientConfig& config,
std::function<std::unique_ptr<StubType>(std::shared_ptr<Channel>)>
create_stub,
int shard) {
// We have to use a 2-phase init like this with a default
// constructor followed by an initializer function to make
// old compilers happy with using this in std::vector
ClientChannelInfo(
const grpc::string& target, const ClientConfig& config,
std::function<std::unique_ptr<StubType>(std::shared_ptr<Channel>)>
create_stub,
int shard) {
ChannelArguments args;
args.SetInt("shard_to_ensure_no_subchannel_merges", shard);
set_channel_args(config, &args);

@ -21,7 +21,7 @@
#include <chrono>
#include <cmath>
#include <cstdlib>
#include <random>
#include <vector>
#include <grpc++/support/config.h>
@ -75,13 +75,13 @@ class InterarrivalTimer {
public:
InterarrivalTimer() {}
void init(const RandomDistInterface& r, int threads, int entries = 1000000) {
std::random_device devrand;
std::mt19937_64 generator(devrand());
std::uniform_real_distribution<double> rando(0, 1);
for (int i = 0; i < entries; i++) {
// rand is the only choice that is portable across POSIX and Windows
// and that supports new and old compilers
const double uniform_0_1 =
static_cast<double>(rand()) / static_cast<double>(RAND_MAX);
random_table_.push_back(
static_cast<int64_t>(1e9 * r.transform(uniform_0_1)));
static_cast<int64_t>(1e9 * r.transform(rando(generator))));
;
}
// Now set up the thread positions
for (int i = 0; i < threads; i++) {

Loading…
Cancel
Save