When we call ev_io_init we give it a function address that has (struct ev_loop*, struct ev_io, int) parameters but how we can make parameters like (struct ev_loop*, struct ev_io, int, void *ptr) and make ev_io_init call it with constant ptr value?
I know how to carry extra data from struct ev_io* but saving same data for every different event is not good way i guess
From the documentation:
Since you just want to pass one pointer, the easiest way is definitely just sticking it in the
datafield.