OK, it actually DOES appear related to the -threaded flag. I was sure I had
removed that and still seen the problem but now it seems that taking that out
is indeed the fix. Using the -O2 flag is OK. I guess it's some syncronization
problem when using the threaded RTS. Which is a shame because it does seem
faster that way on my dual core machine. I guess I need to learn about how
threading works in ghc.
Duncan Coutts <[EMAIL PROTECTED]> wrote: On Tue, 2007-11-20 at 15:18 -0800,
Gregory Propf wrote:
> I'm using the Gtk.timeoutAddFull function to do the animation.
Are you using the threaded rts? Are you linking the program with
-threaded?
Are you doing the drawing directly in the timeout function or just
invalidating the window/widget and letting it get redrawn?
See for example the cairo clock demo which animates the hands of the
clock every second:
timeoutAdd (widgetQueueDraw window >> return True) 1000
In general it is much better to only ever draw to a window or widget
during that widget's expose event.
Duncan
---------------------------------
Get easy, one-click access to your favorites. Make Yahoo! your homepage.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe