Re: Glib g_io_add_watch + AX25
- From: Joe Shaw <joeshaw novell com>
- To: Andre Lohan <webmaster isa-casinos de>
- Cc: gtk-devel-list gnome org
- Subject: Re: Glib g_io_add_watch + AX25
- Date: Sun, 18 Feb 2007 12:27:56 -0500
Hi,
Andre Lohan wrote:
g_io_add_watch(rx_io, G_IO_IN, rx_io_event, NULL);
I end up with 100% CPU load when i add the channel and the callback
rx_io_event never gets called.
i get loads of the following lines in short time with strace:
ioctl(4, FIONREAD, [0]) = 0
poll([{fd=4, events=POLLIN}, {fd=6, events=POLLIN, revents=POLLHUP}], 2,
-1) = 1
I've tried the same with an normal AF_INET socket and it dont "poll" so
often and no 100% CPU load.
The reason why you're getting 100% CPU usage is because the poll() call
is getting HUP events, but your watch doesn't handle that event. You
need to add G_IO_HUP as well for your rx_io_event. (Why you're getting
HUP, I have no idea; I don't know anything about AX25 sockets.)
This is a question that would probably be better on gtk-app-devel-list,
gtk-devel-list is for the development of glib and gtk itself.
Joe
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]