Add optional poll() implementation under MG_ENABLE_POLL

This adds the ability to substitute select() with poll() on supported
unix environments when MG_ENABLE_POLL is defined. A make flag called
USE_POLL is provided as well.
Using poll() removes the limitation of FD_SETSIZE concurrent sockets,
generally 1024 on Linux environments.
This commit is contained in:
Valtteri Koskivuori committed 2022-05-26 06:00:27 +03:00
1 parent f72b27d1c1
commit 420b989adb
5 files changed
+84 -2

No files matched your search

+8
View File
@@ -436,7 +436,11 @@ extern int SockSet(SOCKET hSock, int Type, int Prop, void *pbuf, int size);
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#if defined(MG_ENABLE_POLL) && MG_ENABLE_POLL
#include <poll.h>
#else
#include <sys/select.h>
#endif
#include <sys/socket.h>
#include <sys/stat.h>
#include <sys/time.h>
@@ -578,6 +582,10 @@ int sscanf(const char *, const char *, ...);
#define MG_ENABLE_MIP 0
#endif
#ifndef MG_ENABLE_POLL
#define MG_ENABLE_POLL 0
#endif
#ifndef MG_ENABLE_FATFS
#define MG_ENABLE_FATFS 0
#endif