tk::eventloop(3) suse man page | unix.com

Man Page: tk::eventloop

Operating Environment: suse

Section: 3

Eventloop(3)						User Contributed Perl Documentation					      Eventloop(3)

NAME
Tk::Event - ToolKit for Events
SYNOPSIS
use Tk::Event; Tk::Event->fileevent(*FH, 'readable' => callback); Tk::Event->lineavail(*FH, callback); use Tk::Event::Signal qw(INT); $SIG{'INT'} = callback; use Tk::Event::process; Tk::Event->proc($pid, callback); QueueEvent(callback [, position])
DESCRIPTION
That is better than nothing but still hard to use. Most scripts want higher level result (a line, a "block" of data etc.) So it has occured to me that we could use new-ish TIEHANDLE thus: my $obj = tie SOMEHANDLE,Tk::Event::IO; while (<SOMEHANDLE>) { } Then the READLINE routine registers a callback and looks something like: sub READLINE { my $obj = shift; Event->io(*$obj,'readable',sub { sysread(*$obj,${*$obj},1,length(${*$obj}) }); my $pos; while (($pos = index(${*$obj},$/) < 0) { DoOneEvent(); } Event->io(*$obj,'readable',''); # unregister $pos += length($/); my $result = substr(${*$obj},0,$pos); substr(${*$obj},0,$pos) = ''; return $result; } This is using the scalar part of the glob representing the _inner_ IO as a buffer in which to accumulate chars. perl v5.12.1 2007-05-05 Eventloop(3)
Related Man Pages
dat_evd_free(3dat) - opensolaris
callback_head_init(9) - netbsd
object::deadly::_unsafe(3) - centos
event::generic(3pm) - debian
gstreamer::event(3pm) - debian
Similar Topics in the Unix Linux Community
Grant unprivileged user rights to see the output of echo|format but not modify disks
Migrating to UNIX
Cut command on RHEL 6.8 compatibility issues
The Future of the PM (Private Message) System at UNIX.com
32 bit process addressing more than 4GB