Я пишу программу на основе Epoll, в которой я хочу читать объект хеш-карты, как только к нему добавляются данные, используя потоки и события epoll.
Может кто-нибудь дать здесь объяснение илиукажи мне хороший учебник высокого уровня о том, как работает epoll.
#include <iostream>
#include <thread>`enter code here`
#include <iterator>
#include <map>
#define MAX_EVENTS 5
#define READ_SIZE 10
#include <stdio.h> // for fprintf()
#include <unistd.h> // for close(), read()
#include <sys/epoll.h> // for epoll_create1(), epoll_ctl(), struct epoll_event
#include <string.h>
std::map<int, std::string> mp;
std::map<int, std::string>::iterator it = mp.begin();
void set()
{
mp.insert(std::make_pair(1,"earth"));
mp.insert(std::make_pair(2,"moon"));
std::cout<<"Inserted"<<std::endl;
}
void get()
{
for (auto itr = mp.begin(); itr != mp.end(); ++itr) {
std::cout << itr->first << '\t' << itr->second << '\n';
}
}
int main()
{
struct epoll_event event;
int epoll_fd = epoll_create1(0);
event.events = EPOLLIN | EPOLLOUT;
std::thread threadObj1(set);
std::thread threadObj2(get);
threadObj1.join();
threadObj2.join();
return 0;
}