- if (server->is_used())
- {
- std::cerr << std::endl << "Using server at : " << server << std::endl;
- }
- else
- {
- char buffer[FILENAME_MAX];
- if (x == 0)
- {
- snprintf(buffer, sizeof(buffer), "%s -d -t 1 -p %u -U %u -m 128",
- MEMCACHED_BINARY, server->port(), server->port());
- }
- else
- {
- snprintf(buffer, sizeof(buffer), "%s -d -t 1 -p %u -U %u",
- MEMCACHED_BINARY, server->port(), server->port());
- }
- server->set_command(buffer);
-
- if (not server->start())
- {
- std::cerr << CERR_PREFIX << "Failed system(" << buffer << ")" << std::endl;
- delete server;
- return false;
- }
- std::cerr << "STARTING SERVER: " << buffer << " pid:" << server->pid() << std::endl;
- }
- construct->push_server(server);
+ memcached_return_t rc;
+ bool ret;
+ if (has_socket())
+ {
+ ret= libmemcached_util_ping(socket().c_str(), 0, &rc);
+ }
+ else
+ {
+ ret= libmemcached_util_ping(hostname().c_str(), port(), &rc);
+ }