[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
RE: Help with GIOChanel on Win32 - How do I know that a socket was closed?
- From: <martyn 2 russell bt com>
- To: <danielosmari yahoo com br>, <gtk-app-devel-list gnome org>
- Subject: RE: Help with GIOChanel on Win32 - How do I know that a socket was closed?
- Date: Fri, 5 Mar 2004 13:14:52 -0000
> Hello.
Hi, :)
>
> I'm trying to use GIOChannels, but I probably didn't understand the
> proper way to use them (or is it a bug?).
>
> Using:
> g_io_add_watch(io,
> G_IO_IN | G_IO_PRI | G_IO_NVAL | G_IO_ERR | G_IO_HUP,
> foo,
> NULL);
>
> should call my callback (foo) when the connection finishes, right? But
> it never gets called when the connection ends.
> My code is bellow.
>
g_io_add_watch () only allows you to know when when something changes on
the file descriptor associated with the channel (from my experience).
I think the reason for not being notified when you have been
disconnected, is because GIOChannels are used for handling file
descriptors and file (for example) never has a disconnected state.
In the past, when I have wanted to know if I have been disconnected I
have looked out for:
- G_IO_NVAL | G_IO_ERR
- G_IO_HUP
- G_IO_STATUS_ERROR returned from g_io_channel_read_chars ()
- 0 bytes returned from g_io_channel_read_chars ()
Regards,
Martyn
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]