Files
NP_Midterm/impl/Socket/IOCP.cpp
2025-05-02 12:42:21 +09:00

28 lines
699 B
C++

#include "Socket/IOCP.hpp"
#include "Utils/ThreadPool.hpp"
#include "precomp.hpp"
namespace Chattr {
void IOCP::registerSocket(SOCKET sock) {
#ifdef _WIN32
HANDLE returnData = ::CreateIoCompletionPort((HANDLE)sock, completionPort_, sock, 0);
if (returnData == 0)
completionPort_ = returnData;
#elif __linux__
#endif
}
int IOCP::recv(Chattr::IOCPPASSINDATA* data) {
DWORD recvbytes = 0, flags = 0;
return ::WSARecv(data->socket.sock, &data->wsabuf, 1, &recvbytes, &flags, &data->overlapped, NULL);
}
int IOCP::send(Chattr::IOCPPASSINDATA* data, int __flags) {
DWORD sendbytes = 0;
return ::WSASend(data->socket.sock, &data->wsabuf, 1, &sendbytes, __flags, &data->overlapped, NULL);
}
}