async_get_scanner
异步获取针对某个hashkey下的sortkey区间 [sortkeyA ~ sortkeyB)的一个scanner
///
/// \brief async get hash scanner
/// get scanner for [start_sortkey, stop_sortkey) of hashkey
/// will not be blocked, return immediately.
/// \param hashkey
/// cannot be empty
/// \param start_sortkey
/// sortkey to start with
/// \param stop_sortkey
/// sortkey to stop. ""(empty string) represents the max key
/// \param options
/// which used to indicate scan options, like which bound is inclusive
/// \param callback
/// return status and scanner in callback, and the latter should be deleted when scan complete
///
virtual void
async_get_scanner(const std::string &hashkey,
const std::string &start_sortkey, // start from beginning if this set ""
const std::string &stop_sortkey, // to the last item if this set ""
const scan_options &options,
async_get_scanner_callback_t &&callback) = 0;