interfaces.php 854 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace Man\Core\Events;
  3. /**
  4. *
  5. * 事件轮询库的通用接口
  6. * 其它事件轮询库需要实现这些接口才能在这个server框架中使用
  7. *
  8. * @author walkor <worker-man@qq.com>
  9. *
  10. */
  11. interface BaseEvent
  12. {
  13. /**
  14. * 数据可读事件
  15. * @var integer
  16. */
  17. const EV_READ = 1;
  18. /**
  19. * 数据可写事件
  20. * @var integer
  21. */
  22. const EV_WRITE = 2;
  23. /**
  24. * 信号事件
  25. * @var integer
  26. */
  27. const EV_SIGNAL = 4;
  28. /**
  29. * 事件添加
  30. * @param resource $fd
  31. * @param int $flag
  32. * @param callable $func
  33. */
  34. public function add($fd, $flag, $func);
  35. /**
  36. * 事件删除
  37. * @param resource $fd
  38. * @param int $flag
  39. */
  40. public function del($fd, $flag);
  41. /**
  42. * 轮询
  43. */
  44. public function loop();
  45. }