软件包:libio-aio-perl(4.81-1 以及其他的)
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.
其他与 libio-aio-perl 有关的软件包
|
|
|
|
-
- dep: libc6 (>= 2.34) [除 alpha, ia64, sh4]
- GNU C 语言运行库:共享库
同时作为一个虚包由这些包填实: libc6-udeb
- dep: libc6 (>= 2.40) [sh4]
-
- dep: libc6.1 (>= 2.34) [alpha]
- GNU C 语言运行库:共享库
同时作为一个虚包由这些包填实: libc6.1-udeb
- dep: libc6.1 (>= 2.37) [ia64]
-
- dep: libcommon-sense-perl
- module that implements some sane defaults for Perl programs
-
- dep: perl (>= 5.38.2-3.2) [ia64]
- 拉里 沃尔的实用报表提取语言(Perl)
- dep: perl (>= 5.40.0-6) [除 ia64]
-
- dep: perlapi-5.38.2 [ia64]
- 本虚包由这些包填实: perl-base
-
- dep: perlapi-5.40.0 [除 ia64]
- 本虚包由这些包填实: perl-base
下载 libio-aio-perl
硬件架构 | 版本 | 软件包大小 | 安装后大小 | 文件 |
---|---|---|---|---|
alpha (非官方移植版) | 4.81-1+b2 | 124.8 kB | 381.0 kB | [文件列表] |
amd64 | 4.81-1+b2 | 126.9 kB | 324.0 kB | [文件列表] |
arm64 | 4.81-1+b2 | 122.8 kB | 380.0 kB | [文件列表] |
armel | 4.81-1+b2 | 121.4 kB | 299.0 kB | [文件列表] |
armhf | 4.81-1+b2 | 121.4 kB | 275.0 kB | [文件列表] |
hppa (非官方移植版) | 4.81-1+b2 | 127.3 kB | 337.0 kB | [文件列表] |
i386 | 4.81-1+b2 | 129.3 kB | 319.0 kB | [文件列表] |
ia64 (非官方移植版) | 4.81-1+b1 | 138.9 kB | 458.0 kB | [文件列表] |
m68k (非官方移植版) | 4.81-1+b2 | 121.9 kB | 307.0 kB | [文件列表] |
mips64el | 4.81-1+b2 | 120.3 kB | 386.0 kB | [文件列表] |
ppc64 (非官方移植版) | 4.81-1+b2 | 127.5 kB | 380.0 kB | [文件列表] |
ppc64el | 4.81-1+b2 | 127.0 kB | 380.0 kB | [文件列表] |
riscv64 | 4.81-1+b2 | 127.2 kB | 304.0 kB | [文件列表] |
s390x | 4.81-1+b2 | 127.6 kB | 335.0 kB | [文件列表] |
sh4 (非官方移植版) | 4.81-1+b2 | 130.0 kB | 316.0 kB | [文件列表] |
sparc64 (非官方移植版) | 4.81-1+b2 | 120.0 kB | 1,218.0 kB | [文件列表] |
x32 (非官方移植版) | 4.81-1+b3 | 126.8 kB | 311.0 kB | [文件列表] |