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

📄 repsock.h

📁 用于嵌入式环境的数据库
💻 H
字号:
//-< REPSOCK.H >-----------------------------------------------------*--------*
// FastDB                    Version 1.0         (c) 1999  GARRET    *     ?  *
// (Main Memory Database Management System)                          *   /\|  *
//                                                                   *  /  \  *
//                          Created:      6-May-2003  K.A. Knizhnik  * / [] \ *
//                          Last update:  6-Apr-2003  K.A. Knizhnik  * GARRET *
//-------------------------------------------------------------------*--------*
// Replication socket
//-------------------------------------------------------------------*--------*

#ifndef __REPSOCK_H__
#define __REPSOCK_H__

#include "sockio.h"

//
// Abstract socket interface
//
class FASTDB_DLL_ENTRY replication_socket_t : public socket_t {
  public:
    virtual int       read(void* buf, size_t min_size, size_t max_size, time_t timeout);
    virtual bool      write(void const* buf, size_t size);

    virtual bool      is_ok();
    virtual void      get_error_text(char* buf, size_t buf_size);

    virtual bool      shutdown();

    virtual bool      close();

    virtual void      handleError(int socket, const char* operation, const char* error);

    static replication_socket_t*  connect(char const* addresses[],
                                          int n_addresses, 
                                          int max_attempts = DEFAULT_CONNECT_MAX_ATTEMPTS,
                                          time_t timeout = DEFAULT_RECONNECT_TIMEOUT);

    // 
    // Not implemented for replication socket
    //
    virtual socket_t* accept();
    virtual bool      cancel_accept();
    virtual char*     get_peer_name();
    virtual int       get_handle();

    enum { 
        MaxSockets = 8
    };


    ~replication_socket_t();

  protected:
    replication_socket_t(char const* addresses[], int n_adresses, int max_attempts, time_t timeout);

    socket_t**   sockets;
    int          n_sockets;
    bool         succeed;
};

#endif



⌨️ 快捷键说明

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