summaryrefslogtreecommitdiffstats
path: root/upstream/mageia-cauldron/man3pm/IPC::SharedMem.3pm
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /upstream/mageia-cauldron/man3pm/IPC::SharedMem.3pm
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/mageia-cauldron/man3pm/IPC::SharedMem.3pm')
-rw-r--r--upstream/mageia-cauldron/man3pm/IPC::SharedMem.3pm172
1 files changed, 172 insertions, 0 deletions
diff --git a/upstream/mageia-cauldron/man3pm/IPC::SharedMem.3pm b/upstream/mageia-cauldron/man3pm/IPC::SharedMem.3pm
new file mode 100644
index 00000000..d1dea000
--- /dev/null
+++ b/upstream/mageia-cauldron/man3pm/IPC::SharedMem.3pm
@@ -0,0 +1,172 @@
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
+.ie n \{\
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\" ========================================================================
+.\"
+.IX Title "IPC::SharedMem 3pm"
+.TH IPC::SharedMem 3pm 2023-11-28 "perl v5.38.2" "Perl Programmers Reference Guide"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH NAME
+IPC::SharedMem \- SysV Shared Memory IPC object class
+.SH SYNOPSIS
+.IX Header "SYNOPSIS"
+.Vb 2
+\& use IPC::SysV qw(IPC_PRIVATE S_IRUSR S_IWUSR);
+\& use IPC::SharedMem;
+\&
+\& $shm = IPC::SharedMem\->new(IPC_PRIVATE, 8, S_IRWXU);
+\&
+\& $shm\->write(pack("S", 4711), 2, 2);
+\&
+\& $data = $shm\->read(0, 2);
+\&
+\& $ds = $shm\->stat;
+\&
+\& $shm\->remove;
+.Ve
+.SH DESCRIPTION
+.IX Header "DESCRIPTION"
+A class providing an object based interface to SysV IPC shared memory.
+.SH METHODS
+.IX Header "METHODS"
+.IP "new ( KEY , SIZE , FLAGS )" 4
+.IX Item "new ( KEY , SIZE , FLAGS )"
+Creates a new shared memory segment of \f(CW\*(C`SIZE\*(C'\fR bytes size associated
+with \f(CW\*(C`KEY\*(C'\fR. A new segment is created if
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`KEY\*(C'\fR is equal to \f(CW\*(C`IPC_PRIVATE\*(C'\fR
+.IP \(bu 4
+\&\f(CW\*(C`KEY\*(C'\fR does not already have a shared memory segment associated
+with it, and \f(CW\*(C`\fR\f(CIFLAGS\fR\f(CW & IPC_CREAT\*(C'\fR is true.
+.RE
+.RS 4
+.Sp
+On creation of a new shared memory segment \f(CW\*(C`FLAGS\*(C'\fR is used to
+set the permissions. Be careful not to set any flags that the
+Sys V IPC implementation does not allow: in some systems setting
+execute bits makes the operations fail.
+.RE
+.IP id 4
+.IX Item "id"
+Returns the shared memory identifier.
+.IP "read ( POS, SIZE )" 4
+.IX Item "read ( POS, SIZE )"
+Read \f(CW\*(C`SIZE\*(C'\fR bytes from the shared memory segment at \f(CW\*(C`POS\*(C'\fR. Returns
+the string read, or \f(CW\*(C`undef\*(C'\fR if there was an error. The return value
+becomes tainted. See shmread.
+.IP "write ( STRING, POS, SIZE )" 4
+.IX Item "write ( STRING, POS, SIZE )"
+Write \f(CW\*(C`SIZE\*(C'\fR bytes to the shared memory segment at \f(CW\*(C`POS\*(C'\fR. Returns
+true if successful, or false if there is an error. See shmwrite.
+.IP remove 4
+.IX Item "remove"
+Remove the shared memory segment from the system or mark it as
+removed as long as any processes are still attached to it.
+.IP is_removed 4
+.IX Item "is_removed"
+Returns true if the shared memory segment has been removed or
+marked for removal.
+.IP stat 4
+.IX Item "stat"
+Returns an object of type \f(CW\*(C`IPC::SharedMem::stat\*(C'\fR which is a sub-class
+of \f(CW\*(C`Class::Struct\*(C'\fR. It provides the following fields. For a description
+of these fields see you system documentation.
+.Sp
+.Vb 12
+\& uid
+\& gid
+\& cuid
+\& cgid
+\& mode
+\& segsz
+\& lpid
+\& cpid
+\& nattch
+\& atime
+\& dtime
+\& ctime
+.Ve
+.IP "attach ( [FLAG] )" 4
+.IX Item "attach ( [FLAG] )"
+Permanently attach to the shared memory segment. When a \f(CW\*(C`IPC::SharedMem\*(C'\fR
+object is attached, it will use memread and memwrite instead of
+shmread and shmwrite for accessing the shared memory segment.
+Returns true if successful, or false on error. See \fBshmat\fR\|(2).
+.IP detach 4
+.IX Item "detach"
+Detach from the shared memory segment that previously has been attached
+to. Returns true if successful, or false on error. See \fBshmdt\fR\|(2).
+.IP addr 4
+.IX Item "addr"
+Returns the address of the shared memory that has been attached to in a
+format suitable for use with \f(CWpack(\*(AqP\*(Aq)\fR. Returns \f(CW\*(C`undef\*(C'\fR if the shared
+memory has not been attached.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+IPC::SysV, Class::Struct
+.SH AUTHORS
+.IX Header "AUTHORS"
+Marcus Holland-Moritz <mhx@cpan.org>
+.SH COPYRIGHT
+.IX Header "COPYRIGHT"
+Version 2.x, Copyright (C) 2007\-2013, Marcus Holland-Moritz.
+.PP
+Version 1.x, Copyright (c) 1997, Graham Barr.
+.PP
+This program is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.