Thank you Andrew for this clear explanation.
Epoll is not supported on Solaris. So we will have to think of an alternative for this OS (poll which you suggested should work). As for libuv, we are currently compiling Proton 0.16.0 without it because we don't have bandwidth to check if libuv is working on Solaris. I will have to discuss internally to see if we can allocate some bandwidth to dealing with libuv on Solaris. If you have any input at this level, we will highly appreciate it. Alan Conway stated in another discussion that libuv should fix the slowness we detected in the event injection API. I don't know if poll/epoll would also address this issue which is a bit critical for us. Regards, Adel ________________________________ From: Andrew Stitcher <[email protected]> Sent: Wednesday, January 4, 2017 12:41:31 AM To: [email protected] Subject: Re: [Proton 0.16.0] Is libuv mandatory to compile Proton? On Mon, 2017-01-02 at 18:11 +0000, Adel Boutros wrote: > Hello, > > > I downloaded Proton 0.16.0 and started compiling it without Libuv. > The compilation seems to be passing however I am afraid I might bump > into some unwanted behavior. at runtime. So I wanted to ask you if > libuv is needed? If so, what are the consequences if it is not > available? > Currently it's only used for the C proactor broker example, so there are few consequences of not having it. In the next release our intention is to move some things (at least the C++ binding) to the proactor (when using the container API). We also intend to have 3 different proactor implementations: 1. The libuv version 2. A version based on epoll for Linux 3. A version based on iocp for Windows Currently we have the libuv proactor and are advanced with the iocp proactor. The epoll proactor has not been started. So if everything goes to the current plan you will need libuv to run the C++ binding on platforms that have neither epoll nor iocp. If this causes you specific issues please let us know and we will consider what other options there might be - for instance a proactor based on pure poll (rather than epoll) would be more portable to POSIX systems. Andrew --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
