On Fri, Jan 20, 2012 at 09:20:40PM +0900, Tristan Van Berkom wrote:
> Date: Fri, 20 Jan 2012 21:20:40 +0900
> From: Tristan Van Berkom <t...@gnome.org>
> Subject: Re: discoveries! gtk DOES dim... how can i infinite-loop?
> To: Gary Kline <kl...@thought.org>
> Cc: David Ne??as <y...@physics.muni.cz>, GTK Devel List
>  <gtk-app-devel-list@gnome.org>
> 
> On Fri, Jan 20, 2012 at 8:12 AM, Gary Kline <kl...@thought.org> wrote:
> > On Thu, Jan 19, 2012 at 11:18:22AM +0100, David Ne??as wrote:
> >> Date: Thu, 19 Jan 2012 11:18:22 +0100
> >> From: David Ne??as <y...@physics.muni.cz>
> >> Subject: Re: discoveries! gtk DOES dim... how can i infinite-loop?
> >> To: Gary Kline <kl...@thought.org>
> >> Cc: GTK Devel List <gtk-app-devel-list@gnome.org>
> >>
> >> On Thu, Jan 19, 2012 at 12:58:09AM -0800, Gary Kline wrote:
> >> > i've spent the last many days tryoing [on ubuntu] anf tonight on my
> >> > EEE-900A netbook [debian].  both dim when i go into a recursive
> >> > loop.
> >> >
> >> > 1.  edit with gvim
> >> > 2.  have espeak voice gvim when it is written
> >> > 3 goto 1;
> >> >
> >> > tonight i did everything absolutedly write in chercking various
> >> > things, but the app still dimd if i have the function call itselg.
> >> >
> >> > i should have asked this list whether there there is  a gtk call
> >> > that let's things go into  either  an infinite loop, or, would a
> >> > for() loop work for 300-500 loops?
> >> >
> >> > if not, i need to rethink my algorithm.
> >>
> >> That is probably what you have to do.
> >>
> >> If I understand what your code does (and how) then while gvim is running
> >> your app is *not*.  Your app is blocked and waits until gvim terminates.
> >> The same for espeak.
> >
> >
> >        i think you have it nailed!  [g]vim creates a .SWAP file in
> >        the pwd; so since gvim creates .talk.N.txt.swp while the
> >        textfile is being types into, i do a while(!done) check on
> >        the .swap file.  then i do a second while loop while
> >        talk.N.txt exists.  finally, espeak [flags] | aplay speaks
> >        the words in the text file.  [ i tee the output of espeak
> >        and hand it off to aplay because of strange driver bugs here
> >        on my desktop.]
> >
> >
> >>
> >> You need to use a function such as g_spawn_async() to execute it.  Then
> >> it depends how you communicate with the programs.  If you just want to
> >> know when it terminates use waitpid().
> >>
> >
> >        thanks much.  i'll check g_spawn_async() to see how it is
> >        used.  i hadn't thought of any of the flavors of wait;
> >        everything has worked: gvim//write-quit/espeak a dozen
> >        times.
> >        but the gtk app is greyed and the quit button doesn't work!
> 
> FWIW, we have g_child_watch_add() which is generally easier to
> use than calling waitpid() directly (usually you don't want to
> block on waitpid(), so you would have to handle the SIGCHLD unix
> signal and then call waitpid() from the unix signal, which has
> effectively pre-empted your process... since doing all of this
> is much more complex than it needs to be, I highly recommend
> using g_child_watch_add() to do this safely for you).
> 
> Cheers,
>          -Tristan
> 
        i just check my ancient code in ~/devel/muuz {where i was
        hacking away on my "mind-machine."  it's been 2001 since i
        last touched the wait() stuff.  cannot Believe how much
        trouble i had with that ....  [[i dont swore an oath to Zeus
        that i wouldn't get that deep into signal handling.  if i
        had`xxdbg.  hm.  ...you never know when the next tree branch
        is going to knock out the power!!]]


        gary
         
> 

-- 
 Gary Kline  kl...@thought.org  http://www.thought.org  Public Service Unix
           Journey Toward the Dawn, E-Book: http://www.thought.org
          The 8.57a release of Jottings: http://jottings.thought.org
             Twenty-five years of service to the Unix community.

_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to