(socket server) do not create a select interrupt object everytime when polling for notifications while waiting for new connections, instead use a persistent one which is a member variable

This commit is contained in:
Benjamin Sergeant
2020-08-15 15:28:15 -07:00
parent ed2ed0f7ae
commit 261095fa12
9 changed files with 31 additions and 19 deletions

View File

@ -34,12 +34,10 @@ typedef SSIZE_T ssize_t;
#include "IXCancellationRequest.h"
#include "IXProgressCallback.h"
#include "IXSelectInterrupt.h"
namespace ix
{
class SelectInterrupt;
using SelectInterruptPtr = std::unique_ptr<SelectInterrupt>;
enum class PollResultType
{
ReadyForRead = 0,
@ -96,11 +94,6 @@ namespace ix
int sockfd,
const SelectInterruptPtr& selectInterrupt);
// Used as special codes for pipe communication
static const uint64_t kSendRequest;
static const uint64_t kCloseRequest;
protected:
std::atomic<int> _sockfd;
std::mutex _socketMutex;