Is libuv only a wrapper around libev on POSIX systems?

I am really confused between libev and libuv.

Is libuv only a wrapper around libev on POSIX systems?

If not, where is it different?

+4


source to share


2 answers


Not anymore as libuv-v0.9

Here is a libuv github issue that tracked the removal of libev from libuv.



The reasons for the removal are a quote from the above issue:

In case any project observers are wondering, libev serves us well, but:

  • It only supports level I / O level. In Linux, we want to use the red-front mode - it reduces the number of system calls by a significant margin.

  • Libev's inner loop does a lot of things that we really don't need. Eviscerating the inner loop, as we did in 649ad50 , gave a 40% increase in performance on some benchmarks.

+2


source


For completeness, as of today, we still don't use front I / O in Linux.



+1


source







All Articles