libmicrohttpd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libmicrohttpd] Resume event blocking


From: Christian Grothoff
Subject: Re: [libmicrohttpd] Resume event blocking
Date: Wed, 3 Feb 2016 15:44:06 +0100
User-agent: Mozilla/5.0 (X11; Linux i686; rv:38.0) Gecko/20100101 Thunderbird/38.5.1

Thanks for the report. I've committed a fix along those lines, but
somewhat more aggressive to address similar other cases -- and more
portable -- as SVN 36890.

Happy hacking!

-Christian

On 02/02/2016 08:22 AM, 김현호 wrote:
> Hello,
> 
>  
> 
> I am using MHD 0.9.48 version are working to create a cache server.
> 
> I saw recently with the SUSPEND_RESUME for asynchronous processing if
> multiple connection at the same time to resume the write times of the
> pipe caused by an event occurs once and only once read in the rest of
> the pipe remains in the pipe queue.
> 
> If you look up several times repeated in this way all the pipe fills up,
> it will not write anymore that block the phenomenon generated in the resume.
> 
>  
> 
> Following the above problem it did not occur anymore after such
> modifications.
> 
>  
> 
> diff -r libmicrohttpd-0.9.48/src/include/platform_interface.h
> my_0.9.48/src/include/platform_interface.h
> 
> 163c163
> 
> < #define MHD_pipe_(fdarr) pipe((fdarr))
> 
> ---
> 
>> #define MHD_pipe_(fdarr) pipe2((fdarr), O_NONBLOCK)
> 
>  
> 
> diff -r libmicrohttpd-0.9.48/src/microhttpd/daemon.c
> my_0.9.48/src/microhttpd/daemon.c
> 
> 2832c2832
> 
> <               (void) MHD_pipe_read_ (daemon->wpipe[0], &tmp, sizeof
> (tmp));
> 
> ---
> 
>>                 while (MHD_pipe_read_ (daemon->wpipe[0], &tmp, sizeof (tmp)) 
>> > 0) ;
> 
>  
> 
>  
> 
> Best Regards
> 
> Hyunho Kim
> 
>  
> 

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]