The TELEMAC-MASCARET system
trunk
sources
utils
special
gracestop.f
Go to the documentation of this file.
1
! ****************
2
MODULE
gracestop
3
! ****************
4
!
5
!
6
!***********************************************************************
7
! SPECIAL
8
!***********************************************************************
9
!
10
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
11
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12
!
13
IMPLICIT NONE
14
LOGICAL
::
breaker
= .false.
15
!SGI INTEGER, PARAMETER :: SIGUSR1=16
16
!LINUX INTEGER, PARAMETER :: SIGUSR1=10
17
!IBM INTEGER, PARAMETER :: SIGUSR1=30
18
INTEGER
,
PARAMETER
::
sigusr1
=16
19
CONTAINS
20
!
21
SUBROUTINE
handler
22
IMPLICIT NONE
23
!!! WRITE(*,*) 'SIGNAL ',SIGUSR1,' CAUGHT'
24
breaker
= .true.
25
END SUBROUTINE
handler
26
!
27
SUBROUTINE
grace
28
IMPLICIT NONE
29
WRITE
(*,*)
'I STOP GRACEFULLY'
30
stop 0
31
END SUBROUTINE
grace
32
!
33
SUBROUTINE
trapsig
34
IMPLICIT NONE
35
! INTEGER ISIGNAL, SIGNAL
36
!
37
!SGI ISIGNAL = SIGNAL(SIGUSR1, HANDLER, -1)
38
!LINUX ISIGNAL = SIGNAL(SIGUSR1, HANDLER)
39
!IBM CALL SIGNAL(SIGUSR1, HANDLER)
40
!
41
! CHOICE HERE : NOTHING
42
! ISIGNAL = SIGNAL(SIGUSR1, HANDLER, -1)
43
!
44
END SUBROUTINE
trapsig
45
!
46
END MODULE
gracestop
gracestop::breaker
logical breaker
Definition:
gracestop.f:15
gracestop::sigusr1
integer, parameter sigusr1
Definition:
gracestop.f:19
gracestop
Definition:
gracestop.f:3