main: switch qemu_set_fd_handler to g_io_add_watch
commit4d88a2ac8643265108ef1fb47ceee5d7b28e19f2
authorAnthony Liguori <aliguori@us.ibm.com>
Mon, 22 Aug 2011 13:12:53 +0000 (22 08:12 -0500)
committerAnthony Liguori <aliguori@us.ibm.com>
Thu, 1 Sep 2011 18:12:33 +0000 (1 13:12 -0500)
tree414fdb0116a621018747b0e5def57f10ff6e6ee4
parent69e5bb68a5e95286edd59c3ce34c6f7bae5b5548
main: switch qemu_set_fd_handler to g_io_add_watch

This patch changes qemu_set_fd_handler to be implemented in terms of
g_io_add_watch().  The semantics are a bit different so some glue is required.

qemu_set_fd_handler2 is much harder to convert because of its use of polling.

The glib main loop has the major of advantage of having a proven thread safe
architecture.  By using the glib main loop instead of our own, it will allow us
to eventually introduce multiple I/O threads.

I'm pretty sure that this will work on Win32, but I would appreciate some help
testing.  I think the semantics of g_io_channel_unix_new() are really just tied
to the notion of a "unix fd" and not necessarily unix itself.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
iohandler.c