"Fossies" - the Fresh Open Source Software Archive

Member "memcached-1.6.15/crawler.h" (21 Feb 2022, 1321 Bytes) of package /linux/www/memcached-1.6.15.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "crawler.h" see the Fossies "Dox" file reference documentation.

    1 #ifndef CRAWLER_H
    2 #define CRAWLER_H
    3 
    4 #define LRU_CRAWLER_CAP_REMAINING -1
    5 
    6 typedef struct {
    7     uint64_t histo[61];
    8     uint64_t ttl_hourplus;
    9     uint64_t noexp;
   10     uint64_t reclaimed;
   11     uint64_t seen;
   12     rel_time_t start_time;
   13     rel_time_t end_time;
   14     bool run_complete;
   15 } crawlerstats_t;
   16 
   17 struct crawler_expired_data {
   18     pthread_mutex_t lock;
   19     crawlerstats_t crawlerstats[POWER_LARGEST];
   20     /* redundant with crawlerstats_t so we can get overall start/stop/done */
   21     rel_time_t start_time;
   22     rel_time_t end_time;
   23     bool crawl_complete;
   24     bool is_external; /* whether this was an alloc local or remote to the module. */
   25 };
   26 
   27 enum crawler_result_type {
   28     CRAWLER_OK=0, CRAWLER_RUNNING, CRAWLER_BADCLASS, CRAWLER_NOTSTARTED, CRAWLER_ERROR
   29 };
   30 int start_item_crawler_thread(void);
   31 #define CRAWLER_WAIT true
   32 #define CRAWLER_NOWAIT false
   33 int stop_item_crawler_thread(bool wait);
   34 int init_lru_crawler(void *arg);
   35 enum crawler_result_type lru_crawler_crawl(char *slabs, enum crawler_run_type,
   36         void *c, const int sfd, unsigned int remaining);
   37 int lru_crawler_start(uint8_t *ids, uint32_t remaining,
   38                              const enum crawler_run_type type, void *data,
   39                              void *c, const int sfd);
   40 void lru_crawler_pause(void);
   41 void lru_crawler_resume(void);
   42 
   43 #endif