⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_adb.c

📁 chord 源码 http://pdos.csail.mit.edu/chord/
💻 C
字号:
#include <async.h>#include "libadb.h"void res (int, adb_status);void res2 (int, adb_status, chordID, str);void res3 (adb_status stat, vec<chordID> keys, vec<u_int32_t> v);adb *db;intmain (int argc, char **argv){  if (argc < 3) {    warn << "Not really testing anything!\n";    warn << "Usage: test_adb adbsock namespace\n";    exit (0);  }  db = New adb (argv[1], argv[2]);  for (int i = 0; i < atoi(argv[4]); i++)     if (argv[3][0] == 's')      db->store (bigint(1 + i*1000), str ("foo"), wrap (res, 1 + i*1000));    else      db->fetch (bigint(1 + i+1000), wrap (res2, 1 + i*1000));  amain ();}void res (int i, adb_status error){  if (error) warn << "error was " << error << "\n";  if (i % 1000 < 100) {    warn << "store: " << i << "\n";    db->store (bigint(i + 1), str ("foo"), wrap (res, i+1));  }}voidres2 (int i, adb_status stat, chordID key, str data){  warn << "fetch: " << i << " " << key << " " << data << "\n";  if (i % 1000 < 100)     db->fetch (bigint(1 + i), wrap (res2, 1 + i));}voidres3 (adb_status stat, vec<chordID> keys, vec<u_int32_t> v){  for (unsigned int i = 0; i < keys.size (); i++)    warn << keys[i] << "\n";  if (stat == ADB_OK) {    assert (keys.size () > 0);    db->getkeys (keys.back () + 1, false, wrap (res3));  } else {    warn << stat << "\n";    exit (stat == ADB_COMPLETE);  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -