You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sems/core/sip/async_file_writer.cpp

35 lines
638 B

#include "async_file_writer.h"
async_file_writer::async_file_writer()
{
evbase = event_base_new();
// fake event to prevent the event loop from exiting
ev_default = event_new(evbase,-1,EV_READ|EV_PERSIST,NULL,NULL);
event_add(ev_default,NULL);
}
async_file_writer::~async_file_writer()
{
event_free(ev_default);
event_base_free(evbase);
}
void async_file_writer::start()
{
event_add(ev_default,NULL);
AmThread::start();
}
void async_file_writer::on_stop()
{
event_del(ev_default);
event_base_loopexit(evbase,NULL);
}
void async_file_writer::run()
{
/* Start the event loop. */
event_base_dispatch(evbase);
}