Paul Evans > IO-Async-Loop-Glib-0.20 > IO::Async::Loop::Glib

Download:
IO-Async-Loop-Glib-0.20.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  2
Open  1
View/Report Bugs
Module Version: 0.20   Source   Latest Release: IO-Async-Loop-Glib-0.21

NAME ^

IO::Async::Loop::Glib - use IO::Async with Glib or GTK

SYNOPSIS ^

 use IO::Async::Loop::Glib;

 my $loop = IO::Async::Loop::Glib->new();

 $loop->add( ... );

 ...
 # Rest of GLib/Gtk program that uses GLib

 Glib::MainLoop->new->run();

Or

 $loop->loop_forever();

Or

 while(1) {
    $loop->loop_once();
 }

DESCRIPTION ^

This subclass of IO::Async::Loop uses the Glib::MainLoop to perform read-ready and write-ready tests.

The appropriate Glib::IO sources are added or removed from the Glib::MainLoop when notifiers are added or removed from the set, or when they change their want_writeready status. The callbacks are called automatically by Glib itself; no special methods on this loop object are required.

CONSTRUCTOR ^

$loop = IO::Async::Loop::Glib->new()

This function returns a new instance of a IO::Async::Loop::Glib object. It takes no special arguments.

METHODS ^

There are no special methods in this subclass, other than those provided by the IO::Async::Loop base class.

$count = $loop->loop_once( $timeout )

This method calls the iteration() method on the underlying Glib::MainContext. If a timeout value is supplied, then a Glib timeout will be installed, to interrupt the loop at that time. If Glib indicates that any callbacks were fired, then this method will return 1 (however, it does not mean that any IO::Async callbacks were invoked, as there may be other parts of code sharing the Glib main context. Otherwise, it will return 0.

SEE ALSO ^

AUTHOR ^

Paul Evans <leonerd@leonerd.org.uk>

syntax highlighting: