File: control

package info (click to toggle)
libio-aio-perl 4.72-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 996 kB
  • sloc: ansic: 4,374; perl: 583; makefile: 11; sh: 2
file content (57 lines) | stat: -rw-r--r-- 2,788 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Source: libio-aio-perl
Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
Uploaders: gregor herrmann <gregoa@debian.org>
Section: perl
Testsuite: autopkgtest-pkg-perl
Priority: optional
Build-Depends: debhelper-compat (= 12),
               libcanary-stability-perl,
               libcommon-sense-perl,
               libperl-dev,
               perl
Standards-Version: 4.4.0
Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/libio-aio-perl
Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/libio-aio-perl.git
Homepage: https://metacpan.org/release/IO-AIO

Package: libio-aio-perl
Architecture: any
Depends: ${misc:Depends},
         ${perl:Depends},
         ${shlibs:Depends},
         libcommon-sense-perl
Description: asynchronous IO module for Perl
 IO::AIO module implements asynchronous I/O using whatever means your
 operating system supports. It is implemented as an interface to the libeio
 library: http://software.schmorp.de/pkg/libeio.html.
 .
 Asynchronous means that operations that can normally block your program
 (e.g. reading from disk) will be done asynchronously: the operation
 will still block, but you can do something else in the meantime. This
 is extremely useful for programs that need to stay interactive even
 when doing heavy I/O (GUI programs, high performance network servers
 etc.), but can also be used to easily do operations in parallel that are
 normally done sequentially, e.g. stat'ing many files, which is much faster
 on a RAID volume or over NFS when you do a number of stat operations
 concurrently.
 .
 While most of this works on all types of file descriptors (for
 example sockets), using these functions on file descriptors that
 support nonblocking operation (again, sockets, pipes etc.) is
 very inefficient. Use an event loop for that (such as the L<EV>
 module): IO::AIO will naturally fit into such an event loop itself.
 .
 In this version, a number of threads are started that execute your
 requests and signal their completion. You don't need thread support
 in perl, and the threads created by this module will not be visible
 to perl. In the future, this module might make use of the native aio
 functions available on many operating systems. However, they are often
 not well-supported or restricted (GNU/Linux doesn't allow them on normal
 files currently, for example), and they would only support aio_read and
 aio_write, so the remaining functionality would have to be implemented
 using threads anyway.
 .
 Although the module will work in the presence of other (Perl-) threads,
 it is currently not reentrant in any way, so use appropriate locking
 yourself, always call poll_cb from within the same thread, or never
 call poll_cb (or other aio_ functions) recursively.