File: setjmp.3

package info (click to toggle)
manpages-fr 1.58.1-3
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 10,104 kB
  • ctags: 4
  • sloc: makefile: 106; sh: 8
file content (72 lines) | stat: -rw-r--r-- 2,907 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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
.\" Written by Michael Haardt, Fri Nov 25 14:51:42 MET 1994
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, write to the Free
.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
.\" USA.
.\"
.\" Modifications, Sun Feb 26 14:39:45 1995, faith@cs.unc.edu
.\" "
.\"
.\" Traduction 07/11/1996 par Christophe Blaess (ccb@club-internet.fr)
.\" Mise a jour le 10/07/1997
.\" MJ 21/07/2003 LDP-1.56
.TH SETJMP 3 "21 juillet 2003" LDP "Manuel du programmeur Linux"
.SH NOM
setjmp, sigsetjmp \- Sauver le contexte de pile pour un saut non-local.
.SH SYNOPSIS
.ad l
#include <setjmp.h>
.sp
.nf
.BI "int setjmp (jmp_buf " env ");"
.BI "int sigsetjmp (sigjmp_buf " env ", int " savesigs ");"
.fi
.SH DESCRIPTION
Les fonctions \fBsetjmp()\fP et \fBlongjmp\fP() sont utiles pour grer les
erreurs et les interruptions rencontres dans des routines bas-niveau.
\fBsetjmp()\fP sauvegarde le contexte de pile et d'environnement dans \fIenv\fP
afin de l'utiliser ultrieurement avec \fBlongjmp()\fP.
Le contexte de pile sera invalide si la fonction qui appelle \fBsetjmp()\fP
se termine.
.P
\fBsigsetjmp()\fP est semblable  \fBsetjmp()\fP. Si \fIsavesigs\fP est
non-nul, l'ensemble des signaux bloqus est sauvegard dans \fIenv\fP, et
sera retabli lorsque \fBsiglongjmp()\fP sera invoqu avec ce contexte
\fIenv\fP.

.SH "VALEUR RENVOYE"
\fBsetjmp()\fP et \fBsigsetjmp()\fP renvoient 0 lorsqu'elles reviennent
directement, et une valeur non-nulle si elle reviennent  travers un appel
 \fBlongjmp()\fP ou \fBsiglongjmp()\fP utilisant le contexte sauvegard.
.SH "CONFORMIT"
POSIX, ISO 9899 (C99)
.SH NOTES
POSIX ne prcise pas \fBsetjmp\fP sauve ou non le contexte de signaux.
(Dans SysV ce n'est pas le cas, dans BSD si mais il existe une fonction
\fB_setjmp\fP qui ne le fait pas).
Si vous voulez sauver le masque de signaux, utilisez \fBsigsetjmp\fP.
.P
\fBsetjmp()\fP et \fBsigsetjmp()\fP rendent les programmes difficiles
 comprendre et  maintenir.
Si possible, essayez d'utiliser une autre mthode.
.SH "VOIR AUSSI"
.BR longjmp (3),
.BR siglongjmp (3).
.SH TRADUCTION
Christophe Blaess, 1996-2003.