acl  3.5.3.0
acl::redis_pipeline_message类 参考

#include <redis_client_pipeline.hpp>

+ acl::redis_pipeline_message 的协作图:

Public 成员函数

 redis_pipeline_message (redis_command *cmd, redis_pipeline_type_t type, bool use_mbox=true)
 
 ~redis_pipeline_message (void)
 
redis_pipeline_messageset_type (redis_pipeline_type_t type)
 
redis_pipeline_type_t get_type (void) const
 
redis_commandget_cmd (void)
 
void set_option (size_t nchild, int *timeout)
 
void set_request (size_t argc, const char **argv, size_t *lens)
 
void set_addr (const char *addr)
 
size_t get_nchild (void) const
 
int * get_timeout (void) const
 
void push (const redis_result *result)
 
const redis_resultwait (void)
 
const char * get_addr (void) const
 
size_t get_redirect_count (void) const
 

Public 属性

size_t argc_
 
const char ** argv_
 
size_t * lens_
 

详细描述

the message for transfering between redis command, redis client pipline and redis pipeline channel, which holds the redis command or not.

在文件 redis_client_pipeline.hpp35 行定义.

构造及析构函数说明

◆ redis_pipeline_message()

acl::redis_pipeline_message::redis_pipeline_message ( redis_command cmd,
redis_pipeline_type_t  type,
bool  use_mbox = true 
)
inline

在文件 redis_client_pipeline.hpp37 行定义.

39  : cmd_(cmd)
40  , type_(type)
41  , nchild_(0)
42  , timeout_(NULL)
43  , result_(NULL)
44  , addr_(NULL)
45  , redirect_count_(0)
46  , argc_(0)
47  , argv_(NULL)
48  , lens_(NULL)
49  {
50  if (use_mbox) {
51  mbox_ = new mbox<redis_pipeline_message>(false, false);
52  tbox_ = NULL;
53  } else {
54  tbox_ = new tbox<redis_pipeline_message>(false);
55  mbox_ = NULL;
56  }
57  }

◆ ~redis_pipeline_message()

acl::redis_pipeline_message::~redis_pipeline_message ( void  )
inline

在文件 redis_client_pipeline.hpp59 行定义.

59  {
60  delete mbox_;
61  delete tbox_;
62  }

成员函数说明

◆ get_addr()

const char* acl::redis_pipeline_message::get_addr ( void  ) const
inline

在文件 redis_client_pipeline.hpp124 行定义.

124  {
125  return addr_;
126  }

◆ get_cmd()

redis_command* acl::redis_pipeline_message::get_cmd ( void  )
inline

在文件 redis_client_pipeline.hpp73 行定义.

73  {
74  return cmd_;
75  }

◆ get_nchild()

size_t acl::redis_pipeline_message::get_nchild ( void  ) const
inline

在文件 redis_client_pipeline.hpp98 行定义.

98  {
99  return nchild_;
100  }

◆ get_redirect_count()

size_t acl::redis_pipeline_message::get_redirect_count ( void  ) const
inline

在文件 redis_client_pipeline.hpp128 行定义.

128  {
129  return redirect_count_;
130  }

◆ get_timeout()

int* acl::redis_pipeline_message::get_timeout ( void  ) const
inline

在文件 redis_client_pipeline.hpp102 行定义.

102  {
103  return timeout_;
104  }

◆ get_type()

redis_pipeline_type_t acl::redis_pipeline_message::get_type ( void  ) const
inline

在文件 redis_client_pipeline.hpp69 行定义.

69  {
70  return type_;
71  }

◆ push()

void acl::redis_pipeline_message::push ( const redis_result result)
inline

在文件 redis_client_pipeline.hpp106 行定义.

106  {
107  result_ = result;
108  if (mbox_) {
109  mbox_->push(this, false);
110  } else {
111  tbox_->push(this, false);
112  }
113  }

◆ set_addr()

void acl::redis_pipeline_message::set_addr ( const char *  addr)
inline

在文件 redis_client_pipeline.hpp91 行定义.

91  {
92  addr_ = addr;
93  if (addr) {
94  redirect_count_++;
95  }
96  }

◆ set_option()

void acl::redis_pipeline_message::set_option ( size_t  nchild,
int *  timeout 
)
inline

在文件 redis_client_pipeline.hpp77 行定义.

77  {
78  nchild_ = nchild;
79  timeout_ = timeout;
80  result_ = NULL;
81  addr_ = NULL;
82  redirect_count_ = 0;
83  }

◆ set_request()

void acl::redis_pipeline_message::set_request ( size_t  argc,
const char **  argv,
size_t *  lens 
)
inline

在文件 redis_client_pipeline.hpp85 行定义.

85  {
86  argc_ = argc;
87  argv_ = argv;
88  lens_ = lens;
89  }

引用了 argc_, argv_ , 以及 lens_.

◆ set_type()

redis_pipeline_message& acl::redis_pipeline_message::set_type ( redis_pipeline_type_t  type)
inline

在文件 redis_client_pipeline.hpp64 行定义.

64  {
65  type_ = type;
66  return *this;
67  }

◆ wait()

const redis_result* acl::redis_pipeline_message::wait ( void  )
inline

在文件 redis_client_pipeline.hpp115 行定义.

115  {
116  if (mbox_) {
117  mbox_->pop();
118  } else {
119  tbox_->pop();
120  }
121  return result_;
122  }

类成员变量说明

◆ argc_

size_t acl::redis_pipeline_message::argc_

在文件 redis_client_pipeline.hpp145 行定义.

被这些函数引用 set_request().

◆ argv_

const char** acl::redis_pipeline_message::argv_

在文件 redis_client_pipeline.hpp146 行定义.

被这些函数引用 set_request().

◆ lens_

size_t* acl::redis_pipeline_message::lens_

在文件 redis_client_pipeline.hpp147 行定义.

被这些函数引用 set_request().


该类的文档由以下文件生成: