?? sesselect.h
字號(hào):
/******************************************************************************
* $Header:
*
*
* (c) Copyright 2006 by SCADA Enterprise Solutions Inc
* All rights reserved
*
* NAME:
*
* sesSelect.H -- This is the header file for the sesSelect class
* This object is simplifies the usage of select
* statement
*
* AUTHOR: Wai Tse
*
* DESCRIPTION:
*
* This class provides a C++ select on socket services
*
* REVISION HISTORY:
*
* Initial creation on Feb 19, 2006
*
*****************************************************************************/
#ifndef SES_SELECT_H
#define SES_SELECT_H
#include <errno.h>
#include "sesConst.H"
#include "sesDbg.H"
#include "sesLogErr.H"
#define TIMEOUT_SEC 15 // timeout for waiting message in second
#define TIMEOUT_USEC 0 // timeout for waiting message in micro-second
#define NON_BLOCKING 0 // no blocking on select
#define BLOCK 1 // block until data arrives at one socket
class sesSelect
{
public:
sesSelect ();
sesSelect (const int);
sesSelect (const int,
const int);
~sesSelect ();
void setTimeout (const int);
int ready (const int);
int isSet (const int);
void add (const int);
void remove (const int);
int getHighSock (const int);
private:
char _tmpMsg[MAX_LEN_MSG]; // temporary message buffer
struct timeval _timeout, // timeout for select statement
_savedTimeout; // saved timeout
fd_set _savedMask; // a copy file descriptor mask
fd_set _readMask; // File descriptor mask for select
int _numFds, // number of sockets with data
_numFdsMon; // number of sockets monitored
};
#endif // SES_SELECT_H
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -