On Thu, 2006-06-15 at 16:28 -0400, [EMAIL PROTECTED] wrote: > No, it's not in a seperate thread, it's a function that gets called > asynchronously by the kernel. But that function *does* then make GTK > calls. Would it be safer to tie my serial port routines to one of those > GDK IO callbacks, that way I know it's safe to muck around when I get > called?
In the function, shove the serial data into a pipe that the main thread can read from in a function invoked by a GDK Input call: http://developer.gnome.org/doc/API/2.0/gdk/gdk-Input.html at least, that's what I do. // Wally > > - Nate > > > It sounds like lightening the load merely reduces the chance of hitting > > some race condition. You say your app makes heavy use of the serial > > port. Are you doing this in a separate thread? If so, is that thread > > also making gtk calls (in addition to the main thread)? > > > > > > // Wally > > > > On Thu, 2006-06-15 at 14:41 -0400, [EMAIL PROTECTED] wrote: > >> I'm writing an application that makes fairly heavy use of the serial > >> port. > >> While testing this app, things seem to be running fine, until I wiggle > >> the mouse quickly over a treeview (a list) or over a few checkboxes in > >> the > >> window. Sometimes I have to wiggle for a minute, sometimes just 5 > >> seconds > >> will do, but the app crashes, with either a segfault, or GLib reporting > >> a > >> corrupted doubly linked list. > >> > >> Some thoughts: > >> 1. Wiggling the mouse anywhere besides over the treeview or the > >> checkboxes causes no problems. > >> > >> 2. Processor usage goes up significantly when wiggling the mouse over > >> the > >> treeview or the checkboxes. > >> > >> 3. The problem can be completely avoided by making the offending > >> widgets > >> non-sensitive (dimmed out). > >> > >> 4. I'm running on an old computer, a Celeron, at around 400Mhz or so :( > >> > >> Could number 4 be the culprit? Perhaps wiggling the mouse over some > >> widgets (and thus causing GTK to redraw them, presumably) slows down the > >> system so much (70% processor usage at the time of death sometimes) that > >> some routines or signals interrupt themselves and do something naughty? > >> > >> When I modify the program (skipping key routines) to drastically lower > >> the > >> processor usage, the problem goes away. > >> > >> I would like to chalk this up to a weak computer... but it seems > >> unlikely > >> to me that GTK simply blows up on old computers (with very busy apps). > >> > >> For reference: > >> 400 Mhz Celeron > >> 128 Megs ram > >> Debian Linux > >> GTK 2.6 > >> > >> Any advice is appreciated! > >> > >> _______________________________________________ > >> gtk-app-devel-list mailing list > >> gtk-app-devel-list@gnome.org > >> http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list > > -- > > Your eyes are weary from staring at the CRT. You feel sleepy. Notice > > how restful it is to watch the cursor blink. Close your eyes. The > > opinions stated above are yours. You cannot imagine why you ever felt > > otherwise. > > > -- Your eyes are weary from staring at the CRT. You feel sleepy. Notice how restful it is to watch the cursor blink. Close your eyes. The opinions stated above are yours. You cannot imagine why you ever felt otherwise. _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list