8#include <unordered_map>
30 std::chrono::milliseconds ttl = std::chrono::milliseconds(30000));
32 std::optional<std::vector<std::uint8_t>>
get(
const std::string& key)
const;
33 void put(
const std::string& key, std::vector<std::uint8_t> output);
34 bool has(
const std::string& key)
const;
46 mutable std::mutex mu_;
47 std::unordered_map<std::string, PrefetchEntry> entries_;
48 std::size_t max_entries_;
49 std::chrono::milliseconds ttl_;
Definition prefetch.hpp:27
std::optional< std::vector< std::uint8_t > > get(const std::string &key) const
bool has(const std::string &key) const
std::size_t estimated_bytes() const
Approximate resident bytes: keys, outputs, and per-entry overhead.
std::size_t max_entries() const
Capacity in entries passed at construction.
Definition prefetch.hpp:39
void invalidate(const std::string &key)
FutureCache(std::size_t max_entries=256, std::chrono::milliseconds ttl=std::chrono::milliseconds(30000))
void put(const std::string &key, std::vector< std::uint8_t > output)
Definition checkpoint.hpp:12
Definition prefetch.hpp:13
std::int64_t compute_budget_ms
Definition prefetch.hpp:19
std::vector< std::uint8_t > output
Definition prefetch.hpp:15
std::chrono::steady_clock::time_point created_at
Definition prefetch.hpp:18
bool ready
Definition prefetch.hpp:16
bool valid
Definition prefetch.hpp:17
std::string key
Definition prefetch.hpp:14