Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
POE::Driver::SysRW(3) User Contributed Perl DocumentationPOE::Driver::SysRW(3)

NAME
       POE::Driver::SysRW - buffered, non-blocking I/O using sysread and
       syswrite

SYNOPSIS
       "SYNOPSIS" in POE::Driver illustrates how the interface works.  This
       module is merely	one implementation.

DESCRIPTION
       This driver implements POE::Driver using	sysread	and syswrite.

PUBLIC METHODS
       POE::Driver::SysRW introduces some additional features not covered in
       the base	interface.

   new [BlockSize => OCTETS]
       new() creates a new buffered I/O	driver that uses sysread() to read
       data from a handle and syswrite() to flush data to that handle.	The
       constructor accepts one optional	named parameter, "BlockSize", which
       indicates the maximum number of OCTETS that will	be read	at one time.

       "BlockSize" is 64 kilobytes (65536 octets) by default.  Higher values
       may improve performance in streaming applications, but the trade-off is
       a lower event granularity and increased resident	memory usage.

       Lower "BlockSize" values	reduce memory consumption somewhat with
       corresponding throughput	penalties.

	 my $driver = POE::Driver::SysRW->new;

	 my $driver = POE::Driver::SysRW->new( BlockSize => $block_size	);

       Drivers are commonly instantiated within	POE::Wheel constructor calls:

	 $_[HEAP]{wheel} = POE::Wheel::ReadWrite->new(
	   InputHandle => \*STDIN,
	   OutputHandle	=> \*STDOUT,
	   Driver => POE::Driver::SysRW->new(),
	   Filter => POE::Filter::Line->new(),
	 );

       Applications almost always use POE::Driver::SysRW, so POE::Wheel
       objects almost always will create their own if no Driver	is specified.

   All Other Methods
       POE::Driver::SysRW documents the	abstract interface documented in
       POE::Driver.  Please see	POE::Driver for	more details about the
       following methods:

       flush
       get
       get_out_messages_buffered
       put

SEE ALSO
       POE::Driver, POE::Wheel.

       Also see	the SEE	ALSO section of	POE, which contains a brief roadmap of
       POE's documentation.

AUTHORS	& COPYRIGHTS
       Please see POE for more information about authors and contributors.

perl v5.32.0			  2020-02-01		 POE::Driver::SysRW(3)

NAME | SYNOPSIS | DESCRIPTION | PUBLIC METHODS | SEE ALSO | AUTHORS & COPYRIGHTS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=POE::Driver::SysRW&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help