You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
proxysql/include/Standard_MySQL_Thread.h

39 lines
1.4 KiB

#ifndef __CLASS_STANDARD_MYSQL_THREAD_H
#define __CLASS_STANDARD_MYSQL_THREAD_H
class Standard_MySQL_Thread: public MySQL_Thread
{
private:
MySQL_Connection **my_idle_conns;
MySQL_Data_Stream **my_idle_myds;
bool processing_idles;
unsigned long long last_processing_idles;
PtrArray *mysql_sessions_connections_handler;
public:
rwlock_t thread_mutex;
Standard_MySQL_Thread();
virtual ~Standard_MySQL_Thread();
MySQL_Session * create_new_session_and_client_data_stream(int _fd);
bool init();
void run();
void poll_listener_add(int sock);
void poll_listener_del(int sock);
void register_session(MySQL_Session*);
void unregister_session(int);
struct pollfd * get_pollfd(unsigned int i);
void process_data_on_data_stream(MySQL_Data_Stream *myds, unsigned int n);
void process_all_sessions();
void refresh_variables();
void process_all_sessions_connections_handler();
void register_session_connection_handler(MySQL_Session *_sess);
void unregister_session_connection_handler(int idx);
void myds_backend_set_failed_connect(MySQL_Data_Stream *myds, unsigned int n);
void myds_backend_pause_connect(MySQL_Data_Stream *myds);
void myds_backend_first_packet_after_connect(MySQL_Data_Stream *myds, unsigned int n);
void listener_handle_new_connection(MySQL_Data_Stream *myds, unsigned int n);
SQLite3_result * SQL3_Thread_status(MySQL_Session *sess);
};
#endif /* __CLASS_STANDARD_MYSQL_THREAD_H */