Thanks a lot!

On Tue, Sep 27, 2011 at 4:29 PM, Cedric BAIL <[email protected]> wrote:

> On Tue, Sep 27, 2011 at 8:56 AM, Daniel Juyung Seo <[email protected]>
> wrote:
> > No more comments on this patch?
>
> It's good could get in today.
>
> > If so, I'll commit this in a day.
>
> I was lacking network access. Now I am back, I can commit and break
> stuff again ! Yeah !
>

lol ;-)


>
> > On Thu, Sep 22, 2011 at 10:22 PM, Kim Yunhan <[email protected]> wrote:
> >> Of course, the multiplication won't matter at all. :)
> >> I couldn't predict how much time will be taken in ecore main loop.
> >> There exists similar code in Ecore_Con_Url and if download is stared, it
> >> will be called many times.
> >> So I guess that it could be affected with download performance. (though
> it
> >> will be a little)
> >> That was my concern.
> >> But I thought it again and UI interaction is more important than
> download
> >> performance.
> >> Therefore I'll send a patch again you suggested.
> >>
> >> Thank you.
> >>
> >> Index: ecore/src/lib/ecore_con/ecore_con_url.c
> >> ===================================================================
> >> --- ecore/src/lib/ecore_con/ecore_con_url.c (revision 63527)
> >> +++ ecore/src/lib/ecore_con/ecore_con_url.c (working copy)
> >> @@ -1357,15 +1357,21 @@
> >>    int fd_max, fd;
> >>    int flags, still_running;
> >>    int completed_immediately = 0;
> >> +   double start;
> >>    CURLMcode ret;
> >>
> >>    _url_con_list = eina_list_append(_url_con_list, url_con);
> >>
> >>    url_con->active = EINA_TRUE;
> >>    curl_multi_add_handle(_curlm, url_con->curl_easy);
> >> -   /* This one can't be stopped, or the download never start. */
> >> -   while (curl_multi_perform(_curlm, &still_running) ==
> >> CURLM_CALL_MULTI_PERFORM) ;
> >>
> >> +   start = ecore_time_get();
> >> +   while (curl_multi_perform(_curlm, &still_running) ==
> >> CURLM_CALL_MULTI_PERFORM)
> >> +     if ((ecore_time_get() - start) > (0.7 *
> >> ecore_animator_frametime_get()))
> >> +       {
> >> +          break;
> >> +       }
> >> +
> >>    completed_immediately =
> _ecore_con_url_process_completed_jobs(url_con);
> >>
> >>    if (!completed_immediately)
> >> @@ -1456,7 +1462,7 @@
> >>    start = ecore_time_get();
> >>    while (curl_multi_perform(_curlm, &still_running) ==
> >> CURLM_CALL_MULTI_PERFORM)
> >>      /* make this not more than a frametime to keep interactivity high
> */
> >> -     if ((ecore_time_get() - start) > ecore_animator_frametime_get())
> >> +     if ((ecore_time_get() - start) > (0.7 *
> >> ecore_animator_frametime_get()))
> >>        {
> >>           done = 0;
> >>           break;
> >>
> >>
> >> On Thu, Sep 22, 2011 at 9:33 PM, Gustavo Sverzut Barbieri <
> >> [email protected]> wrote:
> >>
> >>> What will change? The multiplication won't matter and you can move it
> >>> outside of the loop. If there is nothing else to be done in the
> mainloop it
> >>> will do few function calls and get back to work.
> >>>
> >>> If you allow the full frametime to be used, whenever the user will try
> to
> >>> do
> >>> work the frametime will be gone and skips will happen, even under low
> load!
> >>>
> >>> If someone is considering download speed I strongly recommend doing
> >>> splice()
> >>> to avoid it coming from kernel to userspace then back to kernel
> >>>
> >>> Things like servers using ecore don't need frametime at all, thus they
> can
> >>> make it a few seconds or minutes :-)
> >>>
> >>> On Thursday, September 22, 2011, Kim Yunhan <[email protected]> wrote:
> >>> > It sounds good. But I'm wonder download performance will be impaired.
> >>> :'-(
> >>> > It should be tested much more.
> >>> >
> >>> > On Thu, Sep 22, 2011 at 8:13 PM, Gustavo Sverzut Barbieri <
> >>> > [email protected]> wrote:
> >>> >
> >>> >> Better to use a percentual if frametime otherwise user will try to
> do
> >>> some
> >>> >> work and it will not have enough time. Something like 0.7 *
> >>> >> ecore_animator_frametime_get()
> >>> >>
> >>> >> On Thursday, September 22, 2011, Cedric BAIL <[email protected]>
> >>> wrote:
> >>> >> > On Thu, Sep 22, 2011 at 12:51 AM, Kim Yunhan <[email protected]>
> >>> wrote:
> >>> >> >> Thank you!
> >>> >> >> Ecore_Con_Url already have the solution with
> >>> >> _ecore_con_url_idler_handler.
> >>> >> >> So I just break the while loop if it takes too long.
> >>> >> >>
> >>> >> >>
> ==================================================================
> >>> >> >> --- src/lib/ecore_con/ecore_con_url.c (revision 63520)
> >>> >> >> +++ src/lib/ecore_con/ecore_con_url.c (working copy)
> >>> >> >> @@ -1357,15 +1357,21 @@
> >>> >> >>    int fd_max, fd;
> >>> >> >>    int flags, still_running;
> >>> >> >>    int completed_immediately = 0;
> >>> >> >> +   double start;
> >>> >> >>    CURLMcode ret;
> >>> >> >>
> >>> >> >>    _url_con_list = eina_list_append(_url_con_list, url_con);
> >>> >> >>
> >>> >> >>    url_con->active = EINA_TRUE;
> >>> >> >>    curl_multi_add_handle(_curlm, url_con->curl_easy);
> >>> >> >> -   /* This one can't be stopped, or the download never start. */
> >>> >> >> -   while (curl_multi_perform(_curlm, &still_running) ==
> >>> >> >> CURLM_CALL_MULTI_PERFORM) ;
> >>> >> >>
> >>> >> >> +   start = ecore_time_get();
> >>> >> >> +   while (curl_multi_perform(_curlm, &still_running) ==
> >>> >> >> CURLM_CALL_MULTI_PERFORM)
> >>> >> >> +     if ((ecore_time_get() - start) >
> >>> ecore_animator_frametime_get())
> >>> >> >> +       {
> >>> >> >> +          break;
> >>> >> >> +       }
> >>> >> >> +
> >>> >> >>    completed_immediately =
> >>> >> _ecore_con_url_process_completed_jobs(url_con);
> >>> >> >>
> >>> >> >>    if (!completed_immediately)
> >>> >> >>
> >>> >> >>
> >>> >> >> It works well for me.
> >>> >> >> How about this code?
> >>> >> >> Please review again.
> >>> >> >
> >>> >> > Sounds good to me. If nobody apply, I will in a few hours.
> >>> >> >
> >>> >> > Thanks,
> >>> >> >
> >>> >> >> Thank you once again.
> >>> >> >>
> >>> >> >> On Thu, Sep 22, 2011 at 4:46 AM, Cedric BAIL <
> [email protected]>
> >>> >> wrote:
> >>> >> >>
> >>> >> >>> On Wed, Sep 21, 2011 at 6:18 PM, Kim Yunhan <[email protected]>
> >>> wrote:
> >>> >> >>> > Thank you for your advice.
> >>> >> >>> >
> >>> >> >>> > libcurl already supports asynchronous DNS lookup (including
> >>> c-ares).
> >>> >> >>> > Ecore_Con_Url is integrated with libcurl.
> >>> >> >>> > But I think that code in below blocks asynchronous mechanism
> of
> >>> >> libcurl.
> >>> >> >>> > while (curl_multi_perform(_curlm, &still_running)
> >>> >> >>> > == CURLM_CALL_MULTI_PERFORM) ;
> >>> >> >>> >
> >>> >> >>> > I want to fix it simple. :)
> >>> >> >>>
> >>> >> >>> Agreed, I didn't look to that code since months or years, but
> why do
> >>> >> >>> we have a 'while' here ? shouldn't we just go back to the main
> loop
> >>> >> >>> and be magically called again ? did you try that solution ? if
> that
> >>> >> >>> work, it would be a much better fix in my opinion.
> >>> >> >>>
> >>> >> >>> > On Thu, Sep 22, 2011 at 12:48 AM, Nicolas Aguirre <
> >>> >> >>> [email protected]
> >>> >> >>> >> wrote:
> >>> >> >>> >
> >>> >> >>> >> 2011/9/21 Kim Yunhan <[email protected]>:
> >>> >> >>> >> > Hello!
> >>> >> >>> >> >
> >>> >> >>> >> > elm_map uses Ecore Con with CURL.
> >>> >> >
> >>>
> >>>
> ------------------------------------------------------------------------------
> >>> >> All the data continuously generated in your IT infrastructure
> contains a
> >>> >> definitive record of customers, application performance, security
> >>> >> threats, fraudulent activity and more. Splunk takes this data and
> makes
> >>> >> sense of it. Business sense. IT sense. Common sense.
> >>> >> http://p.sf.net/sfu/splunk-d2dcopy1
> >>> >> _______________________________________________
> >>> >> enlightenment-devel mailing list
> >>> >> [email protected]
> >>> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>> >>
> >>> >
> >>>
> >>>
> ------------------------------------------------------------------------------
> >>> > All the data continuously generated in your IT infrastructure
> contains a
> >>> > definitive record of customers, application performance, security
> >>> > threats, fraudulent activity and more. Splunk takes this data and
> makes
> >>> > sense of it. Business sense. IT sense. Common sense.
> >>> > http://p.sf.net/sfu/splunk-d2dcopy1
> >>> > _______________________________________________
> >>> > enlightenment-devel mailing list
> >>> > [email protected]
> >>> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>> >
> >>>
> >>> --
> >>> Gustavo Sverzut Barbieri
> >>> http://profusion.mobi embedded systems
> >>> --------------------------------------
> >>> MSN: [email protected]
> >>> Skype: gsbarbieri
> >>> Mobile: +55 (19) 9225-2202
> >>>
> >>>
> ------------------------------------------------------------------------------
> >>> All the data continuously generated in your IT infrastructure contains
> a
> >>> definitive record of customers, application performance, security
> >>> threats, fraudulent activity and more. Splunk takes this data and makes
> >>> sense of it. Business sense. IT sense. Common sense.
> >>> http://p.sf.net/sfu/splunk-d2dcopy1
> >>> _______________________________________________
> >>> enlightenment-devel mailing list
> >>> [email protected]
> >>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>>
> >>
> >>
> ------------------------------------------------------------------------------
> >> All the data continuously generated in your IT infrastructure contains a
> >> definitive record of customers, application performance, security
> >> threats, fraudulent activity and more. Splunk takes this data and makes
> >> sense of it. Business sense. IT sense. Common sense.
> >> http://p.sf.net/sfu/splunk-d2dcopy1
> >> _______________________________________________
> >> enlightenment-devel mailing list
> >> [email protected]
> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>
> >>
> >
> >
> ------------------------------------------------------------------------------
> > All the data continuously generated in your IT infrastructure contains a
> > definitive record of customers, application performance, security
> > threats, fraudulent activity and more. Splunk takes this data and makes
> > sense of it. Business sense. IT sense. Common sense.
> > http://p.sf.net/sfu/splunk-d2dcopy1
> > _______________________________________________
> > enlightenment-devel mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >
> >
>
>
>
> --
> Cedric BAIL
>
>
> ------------------------------------------------------------------------------
> All the data continuously generated in your IT infrastructure contains a
> definitive record of customers, application performance, security
> threats, fraudulent activity and more. Splunk takes this data and makes
> sense of it. Business sense. IT sense. Common sense.
> http://p.sf.net/sfu/splunk-d2dcopy1
> _______________________________________________
> enlightenment-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to