1CATCHOUT(3PVM) PVM Version 3.4 CATCHOUT(3PVM)
2
3
4
6 pvm_catchout - Catch output from child tasks.
7
8
10 C #include <stdio.h>
11
12 int info = pvm_catchout( FILE *ff )
13
14 Fortran call pvmfcatchout( onoff, info )
15
16
18 ff File descriptor on which to write collected output.
19
20 onoff Integer parameter. Turns output collection on or off.
21
22 info Integer status code returned by the routine. Values less than
23 zero indicate an error.
24
25
27 The routine pvm_catchout causes the calling task (the parent) to catch
28 output from any tasks spawned after the call to pvm_catchout. Charac‐
29 ters printed on stdout or stderr in children tasks are collected by the
30 pvmds and sent in control messages to the parent task, which tags each
31 line and appends it to the specified file. Output from grandchildren
32 (spawned by children) tasks is also collected, provided the children
33 don't reset their PvmOutputTid.
34
35 If option PvmShowTids (see pvm_setopt) is true (nonzero), output is
36 printed as shown below, tagged with the task id where the output origi‐
37 nated:
38 [txxxxx] BEGIN
39 [txxxxx] (text from child task)
40 [txxxxx] END
41
42 The output from each task includes one BEGIN line and one END line,
43 with whatever the task prints in between. If PvmShowTids is false, raw
44 output is printed with no additional information.
45
46 In C, the output file descriptor may be specified. Giving a null
47 pointer turns output collection off for any subsequently spawned child
48 tasks. (Any existing output collection will still proceed at the child
49 tasks, until they exit or change theirPvmOutputTid or related settings
50 - see man page for pvm_setopt().) In Fortran, output collection can
51 only be turned on or off (again only for subsequently spawned child
52 tasks), and is always logged to the stdout of the parent task.
53
54 If pvm_exit is called while output collection is in effect, it will
55 block in order to print all the output, until all tasks sending the
56 given task output have exited. To avoid this, output collection can be
57 turned off by calling pvm_catchout(0) before calling pvm_exit.
58
59 pvm_catchout() always returns 0.
60
61
63 C:
64 #include <stdio.h>
65
66 pvm_catchout(stdout);
67
68 Fortran:
69 CALL PVMFCATCHOUT( 1, INFO )
70
71
73 pvm_exit(3PVM), pvm_setopt(3PVM), pvm_spawn(3PVM)
74
75
76
77 13 July, 1994 CATCHOUT(3PVM)