diff --git a/README.md b/README.md index 4cf6a69fe635d7d6433869a57c4b4caca2ff19fe..fc8b3c76efa921f8437db6ad3b40e79fa05af8b5 100644 --- a/README.md +++ b/README.md @@ -19,14 +19,20 @@ Example Example program launching a DHT node, connecting to the network and performing some basic operations: ```c++ #include <opendht.h> +#include <vector> -int main() { +int main() +{ dht::DhtRunner node; // Launch a dht node on a new thread, using a // generated RSA key pair, and listen on port 4222. node.run(4222, dht::crypto::generateIdentity(), true); + // Join the network through any running node, + // here using a known bootstrap node. + node.bootstrap("bootstrap.ring.cx", "4222"); + // put some data on the dht std::vector<uint8_t> some_data(5, 10); node.put("unique_key", some_data); @@ -38,15 +44,16 @@ int main() { node.get("other_unique_key", [](const std::vector<std::shared_ptr<dht::Value>>& values) { // Callback called when values are found for (const auto& value : values) - std::cout << "Found value: " << value << std::endl; + std::cout << "Found value: " << *value << std::endl; return true; // return false to stop the search }); - + // here we could wait for some operations to complete // instead of ending now. // wait for dht threads to end node.join(); + return 0; } ```