[Glade-users] uni- versus multi-threaded gtk
- From: russ at mannex.com (Russ Mannex)
- Subject: [Glade-users] uni- versus multi-threaded gtk
- Date: Fri, 24 Jun 2011 21:14:33 -0700
Check out the documentation on the event loops. You want to do your
calculations inside an event loop. That way, if there's no event, it
keeps going. If there is an event, it can act on it.
--
Mannex
On Fri, 2011-06-24 at 20:18 -0700, David Buchan wrote:
Hi guys,
I have written a c program with gtk builder user interface. The user presses a button which starts
calculations and a graph to begin to be drawn. The calculations are very slow and so I want the user to be
able to click a stop button to end it if they wish.
I've done it with multi-threading, so that the calculations are started in a new thread, leaving the ui
still available for the user to click a button which changes the state of a flag. The calculations are
within a while loop which keeps going or stops depending upon the state of the aforementioned flag.
But it seems crazy to me that I should need to do this simple thing with multi-threading.
I have this feeling there should be a way to do the computation within a while loop or something (without
multi-threading) that is contingent upon receiving or not receiving a signal from a button. Sort of like:
while (! on_button_clicked) {
...compute stuff...
}
Can anyone give me advice here. Multi-threading seems to be overkill, and in fact, gives the user too much
latitude to go off clicking other stuff I don't want them clicking. The ONLY thing the user need do while
the program is working on the graph, is click a Stop button.
Thanks,
Dave
_______________________________________________
Glade-users maillist - Glade-users at lists.ximian.com
http://lists.ximian.com/mailman/listinfo/glade-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/glade-users/attachments/20110624/aba325b3/attachment.html
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]