On Wed, Nov 08, 2017 at 07:18:44PM +0800, Fam Zheng wrote:
> On Wed, 11/08 15:25, Peter Xu wrote:
> > On Tue, Nov 07, 2017 at 03:11:31PM +0800, Fam Zheng wrote:
> > > On Mon, 11/06 17:46, Peter Xu wrote:
> > > > +static GMainContext *monitor_io_context_get(void)
> > > > +{
> > > > +    return iothread_get_g_main_context(mon_global.mon_iothread);
> > > > +}
> > > > +
> > > > +static void monitor_iothread_init(void)
> > > > +{
> > > > +    mon_global.mon_iothread = iothread_create("monitor_iothread",
> > > > +                                              &error_abort);
> > > > +    /*
> > > > +     * GContext in iothread is using lazy init - the first time we
> > > > +     * fetch the context we'll have that initialized.
> > > > +     */
> > > > +    monitor_io_context_get();
> > > 
> > > Why do you need an eager init here?
> > 
> > I thought putting this line with IOThread creation will make it more
> > clear that the IOThread is using GMainContext polling.  I am not that
> > strong to keep it, but I would prefer.
> 
> The "iothread only starts using GMainContext polling after the lazy init
> happens" is completely opaque to its user, so I don't think there is anything
> but confusion to have this.

Makes sense.  Let me remove it.

-- 
Peter Xu

Reply via email to