-
Notifications
You must be signed in to change notification settings - Fork 149
/
sem-get.xml
165 lines (158 loc) · 4.9 KB
/
sem-get.xml
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 105769eb557af47e5f2d0bea47457827114942fa Maintainer: yannick Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.sem-get" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>sem_get</refname>
<refpurpose>Retourne un identifiant de sémaphore</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>SysvSemaphore</type><type>false</type></type><methodname>sem_get</methodname>
<methodparam><type>int</type><parameter>key</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>max_acquire</parameter><initializer>1</initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>permissions</parameter><initializer>0666</initializer></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>auto_release</parameter><initializer>&true;</initializer></methodparam>
</methodsynopsis>
<para>
<function>sem_get</function> retourne un identifiant qui pourra
être utilisé pour accéder à un sémaphore System V.
</para>
<para>
Un deuxième appel à <function>sem_get</function>
avec la même clé retournera un identifiant
différent, mais les deux identifiants permettront
d'accéder au même sémaphore.
</para>
<para>
Si <parameter>key</parameter> est <literal>0</literal>, un nouvel sémaphore
privé est crée pour chaque appel à <function>sem_get</function>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>key</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>max_acquire</parameter></term>
<listitem>
<para>
Le nombre de processus qui peuvent réserver simultanément le sémaphore
est précisé dans le paramètre <parameter>max_acquire</parameter>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>permissions</parameter></term>
<listitem>
<para>
Les permissions du sémaphore.
Actuellement, cette valeur n'est affectée
que si le processus est le seul processus actuellement
attaché au sémaphore.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>auto_release</parameter></term>
<listitem>
<para>
Le paramètre optionnel <parameter>auto_release</parameter> spécifie
si le sémaphore doit être automatiquement libéré à la fermeture.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Retourne une ressource de sémaphore en cas de succès, et &false; en cas d'erreur.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
En cas de succès, cette fonction retourne une instance de
<classname>SysvSemaphore</classname> désormais; auparavant; une
<type>resource</type> était retourné.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
Le type de <parameter>auto_release</parameter> a été modifié de
<type>int</type> à <type>bool</type>.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<warning>
<simpara>
Lorsque vous utilisez la fonction <function>sem_get</function> pour accéder à
un sémaphore créé en dehors de PHP, veuillez noter que le sémaphore doit avoir
été créé comme un jeu de 3 sémaphores (par exemple, en spécifiant 3 comme
paramètre <literal>nsems</literal> lors de l'appel à la fonction C
<literal>semget()</literal>), sinon, PHP ne sera pas capable d'accéder à ce
sémaphore.
</simpara>
</warning>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>sem_acquire</function></member>
<member><function>sem_release</function></member>
<member><function>ftok</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->