- Timestamp:
- 03/18/08 20:55:10 (9 months ago)
- Location:
- lang/c/mpio/trunk/mp
- Files:
-
- 5 modified
-
event.h (modified) (1 diff)
-
system/buffered_kqueue.h (modified) (2 diffs)
-
system/buffered_kqueue_impl.h (modified) (2 diffs)
-
system/kqueue.h (modified) (2 diffs)
-
system/kqueue_impl.h (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/c/mpio/trunk/mp/event.h
r6888 r8088 11 11 # define MP_SYSTEM epoll 12 12 # elif defined(__APPLE__) && defined(__MACH__) 13 //# define MP_SYSTEM kqueue // FIXME doesn't work13 //# define MP_SYSTEM kqueue // Darwin's kqueue seems to be broken 14 14 # define MP_SYSTEM select 15 //# elif defined(BSD) // FIXME 16 //# define MP_SYSTEM kqueue15 # elif defined(__FreeBSD__) || defined(__NetBSD__) 16 # define MP_SYSTEM kqueue 17 17 # else 18 18 # define MP_SYSTEM select -
lang/c/mpio/trunk/mp/system/buffered_kqueue.h
r6840 r8088 15 15 static const short EV_READ = 0x01; 16 16 static const short EV_WRITE = 0x02; 17 static const short EV_FILT_MAP[3] = {0, EVFILT_READ, EVFILT_WRITE}; 17 18 18 19 class system { … … 38 39 private: 39 40 int m_kqfd; 40 static const short EVFILT_MAP[3];41 41 }; 42 42 -
lang/c/mpio/trunk/mp/system/buffered_kqueue_impl.h
r6740 r8088 4 4 namespace mp { 5 5 6 7 const short system::EVFILT_MAP[3] = {0, EVFILT_READ, EVFILT_WRITE};8 6 9 7 system::system() : m_kqfd(kqueue()) … … 52 50 struct kevent kev; 53 51 if( add_event ) { 54 EV_SET(&kev, fd, EV FILT_MAP[add_event], EV_ADD, 0, 0, NULL);52 EV_SET(&kev, fd, EV_FILT_MAP[add_event], EV_ADD, 0, 0, NULL); 55 53 } else { 56 54 short delete_event = oldevent & ~newevent; 57 EV_SET(&kev, fd, EV FILT_MAP[delete_event], EV_DELETE, 0, 0, NULL);55 EV_SET(&kev, fd, EV_FILT_MAP[delete_event], EV_DELETE, 0, 0, NULL); 58 56 } 59 57 m_buffered.push_back(kev); -
lang/c/mpio/trunk/mp/system/kqueue.h
r6840 r8088 14 14 static const short EV_READ = 0x01; 15 15 static const short EV_WRITE = 0x02; 16 static const short EV_FILT_MAP[3] = {0, EVFILT_READ, EVFILT_WRITE}; 16 17 17 18 class system { … … 35 36 private: 36 37 int m_kqfd; 37 static const short EVFILT_MAP[3];38 38 }; 39 39 -
lang/c/mpio/trunk/mp/system/kqueue_impl.h
r6740 r8088 4 4 namespace mp { 5 5 6 7 const short system::EVFILT_MAP[3] = {0, EVFILT_READ, EVFILT_WRITE};8 6 9 7 system::system() : m_kqfd(kqueue()) … … 29 27 } 30 28 struct kevent kev; 31 EV_SET(&kev, fd, EV FILT_MAP[event], EV_ADD, 0, 0, NULL);29 EV_SET(&kev, fd, EV_FILT_MAP[event], EV_ADD, 0, 0, NULL); 32 30 return kevent(m_kqfd, &kev, 1, NULL, 0, NULL); 33 31 } … … 42 40 } 43 41 struct kevent kev; 44 EV_SET(&kev, fd, EV FILT_MAP[oldevent], EV_DELETE, 0, 0, NULL);42 EV_SET(&kev, fd, EV_FILT_MAP[oldevent], EV_DELETE, 0, 0, NULL); 45 43 return kevent(m_kqfd, &kev, 1, NULL, 0, NULL); 46 44 } … … 51 49 struct kevent kev; 52 50 if( add_event ) { 53 EV_SET(&kev, fd, EV FILT_MAP[add_event], EV_ADD, 0, 0, NULL);51 EV_SET(&kev, fd, EV_FILT_MAP[add_event], EV_ADD, 0, 0, NULL); 54 52 } else { 55 53 short delete_event = oldevent & ~newevent; 56 EV_SET(&kev, fd, EV FILT_MAP[delete_event], EV_DELETE, 0, 0, NULL);54 EV_SET(&kev, fd, EV_FILT_MAP[delete_event], EV_DELETE, 0, 0, NULL); 57 55 } 58 56 return kevent(m_kqfd, &kev, 1, NULL, 0, NULL);
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)