[sheepdog] [PATCH v2 1/2] lib: prioritize events for epoll() and enhance event loop
Hitoshi Mitake
h.mitake at gmail.com
Sat Dec 22 19:06:50 CET 2012
At Sat, 22 Dec 2012 02:00:04 +0800,
Liu Yuan wrote:
>
> On 12/22/2012 01:23 AM, Hitoshi Mitake wrote:
> > - ei = (struct event_info *)events[i].data.ptr;
> > - ei->handler(ei->fd, events[i].events, ei->data);
> > + case EVENT_LOOP_RETRIEVE:
> > + goto retrieve;
>
> Simply go retrieve, won't this drop the already raised events in hands?
Yes. It is intentional. Because there is no way to detect newly coming
events without epoll_wait().
> and you forgot the add description for EVENT_LOOP_XXX in source
> code.
Sorry, I'll write the description in the next version.
>
> Maybe you can write another prio_event_loop()? Then sheep calls
> event_loop() and keeper calls prio_event_loop() might be better way.
OK, I'll seek other ways like prio_event_loop().
Thanks,
Hitoshi
More information about the sheepdog
mailing list